0
代碼在我EFService:投的IList <int>到IList的<string>
private IDbSet<Item> _Items;
private int _SearchTakeCount = 10;
public IList<string> SearchByArticleCount(int articleCount)
{
return _Items.AsNoTracking().Where(m => m.Articles.Count().Equals(articleCount))
.Take(_SearchTakeCount)
.Select(m => m.Articles.Count().ToString())
.Distinct()
.ToList();
}
代碼在我的控制器:
public virtual ActionResult AutoCompleteSearch(string term, KeywordSearchBy searchBy = KeywordSearchBy.Name)
{
IList<string> data = new List<string>();
switch (searchBy)
{
case ItemSearchBy.Name:
data = _ItemService.SearchByName(term);
break;
case ItemSearchBy.ArticleCount:
int articleCount = Convert.ToInt32(term);
data = _ItemService.SearchByArticleCount(articleCount);
break;
}
當我運行異常計提壞賬項目
。 此例外是: LINQ to Entities不能識別方法'System.String ToString()'方法,並且此方法不能轉換爲存儲表達式。
正如一個側面說明 - 你在做什麼是一個「轉換」,而不是「中投」。鑄造不會更改變量的實例,轉換會創建新變量的全新實例。 – Enigmativity