在我的C#应用程序中,我在表格中显示订单列表。该页面的网址是
/Organization/Orders/id
在这种情况下,id是组织ID。我的控制器看起来像这样
[HttpGet]
public ActionResult Orders(String id)
{
Organization org = Organization.Get(id);
ViewBag.Orders = org.GetOrders(50).ToList();
return View(org);
}
现在我正在尝试在那里实现搜索功能。在视图中,我有一个搜索表单。当用户点击搜索按钮时,我将他带到此控制器
[HttpPost]
public ActionResult Orders(String orgId, OrderSearch os)
{
Organization org = Organization.Get(orgId);
ViewBag.Orders = org.GetOrders(50).Where(i => i.GetLocation().FriendlyName.Contains(os.FriendlyName)).ToList();
return View(org);
}
这种方法的问题在于,如果用户搜索特定的位置名称,则会将他带到Post方法。它可以正常工作但我们假设用户刷新浏览器它仍会显示搜索到的内容而不是重置搜索。
我理解这是因为我在post方法和post参数中我会有locationName。
那么,有没有其他好的方法来实现搜索?