MVC:HtmlHelper:获取动作/控制器值

时间:2014-09-15 09:46:40

标签: asp.net-mvc

我的项目有一个HtmlHelper,它会生成链接(带有routeValues),这些链接总是直接返回到产生的控制器/动作'它们。

是否可以从HtmlHelper中检索这些值?即没有明确提供它们。这样可以正常工作....

var url = new UrlHelper(html.ViewContext.RequestContext);
anchorBuilder.MergeAttribute("href", url.Action("Details", routeValues));

......不是因为这个行动不会永远是"细节"。

2 个答案:

答案 0 :(得分:1)

或者这个:

        var controller = helper.ViewContext.RouteData.Values["Controller"].ToString();
        var action = helper.ViewContext.RouteData.Values["Action"].ToString();

答案 1 :(得分:0)

试试这个:

var currentAction = html.ViewContext.RouteData.GetRequiredString("action");
var url = new UrlHelper(html.ViewContext.RequestContext);
anchorBuilder.MergeAttribute("href", url.Action(currentAction, routeValues));