Asp.net MVC中获取控制器的名称的方法

2025-05-29 0 74

1、视图中  

?

1

2
string controller = ViewContext.RouteData.Route.GetRouteData(this.Context).Values["controller"].ToString();

    string controller = ViewContext.RouteData.Values["controller"].ToString();

2、控制器的action中

?

1

2
string controller = RouteData.Route.GetRouteData(this.HttpContext).Values["controller"].ToString();

    string controller = RouteData.Values["controller"].ToString();

3、过滤器中

  比如在ActionFilterAttribute中,这个时候一般是自己实现一个继承类,然后重写相关的方法。

  在重写的方法中如果需要控制器的名称。

?

1

2

3

4

5

6

7

8

9

10
 /// <summary>

/// 验证权限,用于检查用户是否已经登录(action执行前会先执行这里)

/// </summary>

/// <param name="filterContext"></param>

public override void OnActionExecuting(ActionExecutingContext filterContext)

{

base.OnActionExecuting(filterContext);

       string controller = filterContext.RouteData.Values["controller"].ToString();

controller = controller + "Controller";

}

4、公共方法中

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17
 /// <summary>

/// 获取当前页面的Controller全名称

/// </summary>

/// <returns></returns>

public string GetCurrentController()

{

string controller = HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString();

if (!string.IsNullOrWhiteSpace(controller))

{

controller = controller + "Controller";

}

else

{

controller = "";

}

return controller;

}

以上所述是小编给大家介绍的Asp.net MVC中获取控制器的名称的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对快网idc网站的支持!

原文链接:http://www.cnblogs.com/goodborder/archive/2016/10/13/5956287.html

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 Asp.net MVC中获取控制器的名称的方法 https://www.kuaiidc.com/100275.html

相关文章

发表评论
暂无评论