2012-07-18 82 views
1

試圖從模型拉以JSON值後使用自動完成在破發點LINQ to Entities不支持指定的類型成員。

指定類型的成員得到這個錯誤「SuggPromise」在LINQ是不支持的實體。只有初始化,實體成員和實體導航屬性都支持

這裏是示範

public string SuggPromise 
    { 
     get 
     { 
      return Title; 
     } 
    } 

這裏是JSON請求

public ActionResult QuickSearch(string term) 
    { 
     var promises = promiseRepository.Promises 
      .Where(r => r.Title.Contains(term)) 
      .Take(10) 
      .Select(r => new { label = r.SuggPromise}); 
     return Json(promises, JsonRequestBehavior.AllowGet); 

    } 

回答

2

您只能使用映射特性到LINQ-To-Entities表達式中的數據庫列。 SuggPromise似乎不是一個。可以使用:

yadda.blah.Select(r => new { label = r.Title }) 

在EF中做投影;或

yadda.blah.AsEnumerable() 
    .Select(r => new { label = r.Title }) 

獲取整個實體,然後用LINQ-To-Objects進行投影。

相關問題