【发布时间】:2016-09-25 17:08:59
【问题描述】:
我有以下 ActionResult 并检索以“查询”参数值开头的记录。但是,当查询值为空或 null 时,方法不返回任何记录,而我想检索所有记录。那么,我是否必须使用 if 子句并创建不同的 lambda 子句,或者是否可以使用 StartsWith 检查查询参数并检索所有记录?
public ActionResult StudentLookup(string query)
{
var students = repository.Students.Select(m => new StudentViewModel
{
Id = m.Id,
Name = m.Name
})
.Where(m => m.Name.StartsWith(query));
return Json(students, JsonRequestBehavior.AllowGet);
}
【问题讨论】:
-
你也可以使用
Where(m=>(m.Name ??"").StartsWith(query));实现同样的目的
标签: c# asp.net asp.net-mvc linq lambda