abstract:這篇文章主要介紹了Asp.net MVC中獲取控制器的名稱(chēng)的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下1、視圖中 string controller = ViewContext.RouteData.Route.GetRouteData(this.Context).Values["controller"].ToString();
這篇文章主要介紹了Asp.net MVC中獲取控制器的名稱(chēng)的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
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、過(guò)濾器中
比如在ActionFilterAttribute中,這個(gè)時(shí)候一般是自己實(shí)現(xiàn)一個(gè)繼承類(lèi),然后重寫(xiě)相關(guān)的方法。
在重寫(xiě)的方法中如果需要控制器的名稱(chēng)。
/// <summary> /// 驗(yàn)證權(quán)限,用于檢查用戶(hù)是否已經(jīng)登錄(action執(zhí)行前會(huì)先執(zhí)行這里) /// </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> /// 獲取當(dāng)前頁(yè)面的Controller全名稱(chēng) /// </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; }
更多關(guān)于Asp.net MVC中獲取控制器的名稱(chēng)的方法請(qǐng)關(guān)注PHP中文網(wǎng)(www.miracleart.cn)其他文章!