C# 在MVC中使用动作链接传递参数
我有两个视图类别和产品我通过传递类别Id检索产品,我想在我的产品视图中实现搜索功能。当我尝试传递类别id和搜索字符串时C# 在MVC中使用动作链接传递参数,c#,asp.net-mvc,C#,Asp.net Mvc,我有两个视图类别和产品我通过传递类别Id检索产品,我想在我的产品视图中实现搜索功能。当我尝试传递类别id和搜索字符串时 在我的控制器方法搜索表单中,如果我单独传递搜索字符串,则提交不起作用。如何在控制器方法中传递这两个参数。或者我应该使用局部视图进行此操作 类别视图: @foreach (var item in Model) { <li> @Html.ActionLink( @item.Category, "
在我的控制器方法搜索表单中,如果我单独传递搜索字符串,则提交不起作用。如何在控制器方法中传递这两个参数。或者我应该使用局部视图进行此操作 类别视图:
@foreach (var item in Model)
{
<li>
@Html.ActionLink(
@item.Category,
"Products", "
Home",
new { cid = @item.CategoryId, search = UrlParameter.Optional},
null)
</li>
}
您应该将参数类型更改为Nullable,因为当您从产品搜索视图提交时,没有“cid”
public ActionResult Products( string search,int? cid)
非常感谢泰迪的即时回复1.它起作用了
public ActionResult Products( string search,int cid)
{
if (!string.IsNullOrEmpty(search))
{
var ser = db.searchPro(search);
return View(ser);
}
else
{
var Pro = db.getProducts(cid);
return View(Pro);
}
}
public ActionResult Products( string search,int? cid)