[英]Radio Button Search Combine Two Parameters C# Lambda
在组合搜索约翰·史密斯(John Smith)的名称时寻求帮助。 我可以使搜索适用于John或Smith,但是当我将两者结合时,没有任何结果。
控制器-仅带回名字或姓氏(与||相同)
public ActionResult index(string searchBy, string search)
{
if (searchBy == "name")
{ return View(db.members.Where(x => x.members_firstname.Contains(search)
|| x.members_lastname.Contains(search)).ToList());
}
控制器-不起作用
public ActionResult index(string searchBy, string search)
{
if (searchBy == "name")
{ return View(db.members.Where(x => x.members_firstname.Contains(search)
&& x.members_lastname.Contains(search)).ToList());
}
视图:
<p>
@using (Html.BeginForm("Index", "Members", FormMethod.Get))
{
<b>Search By</b><@Html.RadioButton("searchBy", "name", true)<text>Name</text>
@Html.RadioButton("searchBy", "members_id") <text> ID</text>
@Html.TextBox("search") <input type="submit" value="search" />
}
</p>
会员模型
public string members_firstname { get; set; }
public string members_lastname { get; set; }
谢谢
在控制器中,您正在使用一个搜索字符串来查找名字和姓氏,因此您将只能找到像John John或Smith Smith这样的成员。 您需要将第二个姓氏参数添加到索引操作中,并修改视图以处理两个参数:
public ActionResult index(string searchBy, string searchFirstName, string searchLastName)
{
if (searchBy == "name")
{
return View(db.members.Where(x => x.members_firstname.Contains(searchFirstName)
&& x.members_lastname.Contains(searchLastName)).ToList());
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.