您的位置:首页 > 其它

MVC中如何获取控制器的名称

2018-02-02 11:45 344 查看
1、视图中

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


2、控制器的action中

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


3、过滤器中

/// <summary>
/// 过滤器中
/// </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、公共方法中

/// <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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: