我正在尝试创建linq lambda表达式以返回其名字以特定字母开头的客户。但是我得到错误.select说:
运营商'。'不能应用于lambda表达式。
public JsonResult GetCust(string term)
{
var data = context.Customers
.Where((dr => dr.First.StartsWith(term) == true) || (dr => dr.Last.StartsWith(term) == true))
.Select(dr => new { Name=String.Concat(dr.First, dr.Last), Adrs = dr.Street, value = dr.CustID })
.Take(10);
return Json(data, JsonRequestBehavior.AllowGet);
}
知道如何返回所需数据?
答案 0 :(得分:2)
在以下行中:
.Where((dr => dr.First.StartsWith(term) == true) || (dr => dr.Last.StartsWith(term) == true))
你正在两个lambda表达式上使用|| -Operator。
Where-Clause应该更像这样:
.Where(dr => dr.First.StartsWith(term) || dr.Last.StartsWith(term))