gpt4 book ai didi

asp.net-mvc - 给定 htmlHelper + Action 名称,如何找出 Controller 名称?

转载 作者:行者123 更新时间:2023-12-04 10:13:00 26 4
gpt4 key购买 nike

HtmlHelper.ActionLink(htmlhelper,string linktext,string action) 如何找出正确的路线?

如果我有这个=>

HtmlHelper.ActionLink("Edit","Edit")

Mvc 会自动找出正确的路由。

即 - 如果 Controller 是产品,它将呈现带有 href product/edit 的 anchor .

那么 - 当我得到 htmlHelper + action name 组合时如何找出 Controller 名称?

最佳答案

如果您的 HtmlHelper 看起来像:

public static string MyHelper(this HtmlHelper htmlHelper,
... some more parameters ...) {

return ... some stuff ...
}

然后从您的助手访问:
RouteData routeData = htmlHelper.ViewContext.RouteData;
string controller = routeData.GetRequiredString("controller");

RouteData 对象包含 ASP.NET Routing 为当前请求处理的所有值。这将包括来自路由的参数名称和值,例如“{controller}/{action}/{id}”。许多内置的 ASP.NET MVC 帮助程序从那里获取“环境”数据,因此开发人员不必为他们使用的每个帮助程序键入它们。

您还可以从这里下载 ASP.NET MVC 的完整源代码:
  • ASP.NET MVC 1.0 RTM source code
  • ASP.NET MVC 2 Release Candidate source code
  • 关于asp.net-mvc - 给定 htmlHelper + Action 名称,如何找出 Controller 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1990243/

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