asp.net MVC 中的搜索方法

本文关键字:搜索 方法 net MVC asp | 更新日期: 2023-09-27 18:30:27

您好,我想使用下拉列表在我的数据库中进行搜索

就是这样:

     @Html.DropDownList("Id", new List<SelectListItem>{
      new SelectListItem {Text="Agent name",Value="1"},
       new SelectListItem {Text="Location",Value= "2",}
         }, "choose",new { @class = "dropdown" })
       <input type="submit" class="submit" value="Search" />

我的连接者 :

  public ActionResult Index(int Id=1)
    {
        var agentlocation = new AgentLocationViewModel();
            if (Id == 2)
                agentlocation.agents = db.Agents.OrderBy(a =>a 
                   .Location.LocationName).ToList();
            else
            {
                agentlocation.agents = db.Agents.ToList();
            }

        return View(agentlocation);
    }

当用户选择位置时,数据将按位置排序

问题是当我尝试单击搜索按钮时没有任何反应(就像值为空一样)

asp.net MVC 中的搜索方法

您需要添加表单元素。如果没有表单元素,则不会提交任何内容。

<form action="/Home/Index" method="get">
  @Html.DropDownList("Id", new List<SelectListItem>{
  new SelectListItem {Text="Agent name",Value="1"},
   new SelectListItem {Text="Location",Value= "2",}
     }, "choose",new { @class = "dropdown" })
   <input type="submit" class="submit" value="Search" />
</form>

或使用剃刀:

@using (Html.BeginForm("Index", "Home", FormMethod.Get))
{
    @Html.DropDownList("Id", new List<SelectListItem>
    {
    new SelectListItem {Text="Agent name",Value="1"},
    new SelectListItem {Text="Location",Value= "2",}
    }, "choose", new { @class = "dropdown" })
    <input type="submit" class="submit" value="Search" />
}