繁体   English   中英

MVC ActionLink无法正确显示

[英]MVC ActionLink not displaying correctly

我的目标是使链接显示为mydomain.com/viewPhone/1

当前,该链接显示为Home / phoneCatalog,并且未显示我的ID

路由

  routes.MapRoute(
        name: "phoneCatalog",
        url: "viewPhone/{phoneID}",
        defaults: new { controller = "Home", action = "phoneCatalog",}
    );

CONTROLLER

public ActionResult phoneCatalog(int phoneID)
{
//CODE HERE
}

MVC视图

<span class="floatL w100">@Html.ActionLink(title, "phoneCatalog", "Home", new { phoneID = orderItem.phoneID }, null)


              </span>

请改用@Html.RouteLink 您可能仍然定义了后备{controller}/{action}/{id}路由。

@Html.RouteLink(title, "phoneCatalog", new { phoneID = orderItem.phoneID })

您应该使用属性路由。 如果您希望为操作使用不同的名称而不是默认值,则它将为您提供更大的灵活性。

这个用起来很简单。

检出: http : //blogs.msdn.com/b/webdev/archive/2013/10/17/attribute-routing-in-asp-net-mvc-5.aspx

[Route("viewPhone/{phoneID:int}")]
public ActionResult phoneCatalog(int phoneID)
{
//CODE HERE
}

尝试这个。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM