public class HomeController : Controller
{
[Route("Users/about")]
[Route("Users/WhoareWe")]
[Route("Users/OurTeam")]
[Route("Users/aboutCompany")]
public ActionResult GotoAbout()
{
return View();
}
}
我为 GotoAbout()
操作定义了许多路线。
当为 home/users/about
等操作生成 URL 时,如何以编程方式在 razor 页面中创建路由 URL?
最佳答案
引用 Attribute Routing in ASP.NET MVC 5 - Route Names
您可以为路由指定名称,以便轻松地为其生成 URI。
例如,对于以下路线:
[RoutePrefix("Home")]
public class HomeController : Controller {
[Route("Users/about", Name = "Users_About")]
[Route("Users/WhoareWe")]
[Route("Users/OurTeam")]
[Route("Users/aboutCompany")]
public ActionResult GotoAbout() {
return View();
}
}
您可以使用 Url.RouteUrl
生成链接:
<a href="@Url.RouteUrl("Users_About")">About</a>
这将解析为
<a href="home/users/about">About</a>
关于c# - 如何在 Asp.Net MVC 中使用属性路由为操作生成 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44619883/