我在具有ASP.NET MVC 5属性路由的控制器中有操作。
[RoutePrefix("ControllerName")]
public class MyController : Controller
{
[Route("ActionName")]
public ActionResult Index()
{
return View();
}
}
当我尝试像这样操作网址时(Controller.Url)
Url.Action("Index", "My")
我懂了
/我/索引
当我在View(WebViewPage.Url)中执行相同操作时,
@Url.Action("Index", "My")
我懂了
/ ControllerName / ActionName
如何获得/ ControllerName / ActionName的作用?
最佳答案
如果要从其他控制器构造URL,则需要像这样使用UrlHelper类:
var urlHelper = new UrlHelper(ControllerContext.RequestContext);
var url = urlHelper.Action("Index", "My");
这将构造您想要的结果:/ ControllerName / ActionName