Arn*_*psa 7 asp.net-mvc routing html-helper
HtmlHelper.ActionLink(htmlhelper,string linktext,string action)如何确定正确的路由?
如果我有这个=>
HtmlHelper.ActionLink("Edit","Edit")
Run Code Online (Sandbox Code Playgroud)
Mvc自动找出正确的路线.
即 - 如果控制器是Product,它将使用href渲染锚点product/edit
.
那么 - 当我得到htmlHelper +动作名称组合时如何计算出控制器名称?
Eil*_*lon 15
如果您的HtmlHelper看起来像:
public static string MyHelper(this HtmlHelper htmlHelper,
... some more parameters ...) {
return ... some stuff ...
}
Run Code Online (Sandbox Code Playgroud)
然后从您的助手访问:
RouteData routeData = htmlHelper.ViewContext.RouteData;
string controller = routeData.GetRequiredString("controller");
Run Code Online (Sandbox Code Playgroud)
RouteData对象包含ASP.NET Routing为当前请求处理的所有值.这将包括路径中的参数名称和值,例如"{controller}/{action}/{id}".许多内置的ASP.NET MVC助手从那里获取"环境"数据,因此开发人员不必为他们使用的每个助手输入它们.
您还可以从此处下载完整的源代码到ASP.NET MVC:
归档时间: |
|
查看次数: |
2014 次 |
最近记录: |