gpt4 book ai didi

c# - 使用属性路由在 Controller 中获取操作的 url

转载 作者:太空宇宙 更新时间:2023-11-03 10:31:40 28 4
gpt4 key购买 nike

我在 Controller 中使用 ASP.NET MVC 5 属性路由执行操作。

[RoutePrefix("ControllerName")]
public class MyController : Controller
{
[Route("ActionName")]
public ActionResult Index()
{
return View();
}
}

当我尝试像这样 (Controller.Url) 获取 url 时

Url.Action("Index", "My")

我明白了

/My/Index

当我在 View 中执行相同操作时(它是 WebViewPage.Url),

@Url.Action("Index", "My")

我明白了

/ControllerName/ActionName

如何让/ControllerName/ActionName 生效?

最佳答案

如果你想从其他 Controller 构造 url,你需要像这样使用 UrlHelper 类:

var urlHelper = new UrlHelper(ControllerContext.RequestContext);
var url = urlHelper.Action("Index", "My");

这将构建您想要的结果:/ControllerName/ActionName

关于c# - 使用属性路由在 Controller 中获取操作的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29929722/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com