Функция ToTitleCase вылетает Linq
У меня есть запрос Linq, который работает должным образом, за исключением того, что описание выходит во всех столицах, поэтому я создал функцию, через которую затем передал поле описания. Это выглядит правильно, но запрос вылетает со следующим сообщением,
LINQ to Entities не распознает метод метода System.String ToTitleCase(System.String), и этот метод нельзя преобразовать в выражение хранилища.
Как я должен сделать ToTitleCase?
Вот запрос:
var BuyersData =
(from x in twd.ProductInfoLists
where x != null
select new ProductListViewModel
{
MinimumProductInfoID = x.MinimumProductInfoID,
Code = (!(x.ItemCode == null || x.ItemCode.Trim() == string.Empty) ? x.ItemCode : x.EquivCode),
Description = Functions.ToTitleCase(x.PDESC),
MinimumOnHandQuantity = x.MinimumOnHandQuantity,
MaximumOnHandQuantity = x.MaximumOnHandQuantity,
MinimumOrderQuantity = x.MinimumOrderQuantity,
UseForecast = x.UseForecast,
LeadTimeInWeeks = x.LeadTimeInWeeks,
Region = x.Region,
Comment = x.Comment,
PermanentNote = x.PermanentNote
}).ToArray().OrderBy(p => p.Code).ThenBy(p => p.Region
);
а вот и функция:
public static string ToTitleCase(string ToConvert)
{
TextInfo currentCulture = new CultureInfo("en-US", false).TextInfo;
return currentCulture.ToTitleCase(ToConvert);
}