我在链接的布局中使用下面的代码:
<a href="@Url.Action("NewProduct", "Administrator", new { id = UrlParameter.Optional })"></a>
但它不起作用,这是我的路线Config
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home" , action = "Index", id = UrlParameter.Optional }
);
}
这是我的NewProduct控制器:
public ActionResult NewProduct(int id = -1)
{
NewProductModel m = new NewProductModel();
return View(m);
}
我的UrlParameter.optional
有什么问题答案 0 :(得分:1)
当您使用@Url.Action
助手时,您应该将实际值传递给参数,如下所示:
@Url.Action("NewProduct", "Administrator", new { id = 1 })
UrlParameter.Optional
只能在您的代码中看到的RouteConfig中使用。
答案 1 :(得分:0)
:
public ActionResult NewProduct(int id = -1)
{
NewProductModel m = new NewProductModel();
m.Id = id;
return View(m);
}
和链接
<a href="@Url.Action("NewProduct", "Administrator", new { id = Model.Id})"></a>