MVC 在Action中,过滤器中,或视图中,获取当前请求的 控制器/视图/区域的名字及跳转
来源:互联网 发布:致幻蘑菇 知乎 编辑:程序博客网 时间:2024/05/02 13:48
MVC 在Action中或过滤器中或视图中获取当前请求的控制器/视图/区域的名字
1)过滤器中:
public class CMSAttribute : FilterAttribute, IAuthorizationFilter
{
public void OnAuthorization(AuthorizationContext filterContext)
{
var controllerName = (filterContext.RouteData.Values["controller"]).ToString().ToLower();
var actionName =(filterContext.RouteData.Values["action"]).ToString().ToLower();
var areaName = (filterContext.RouteData.DataTokens["area"] == null ? "" : filterContext.RouteData.DataTokens["area"]).ToString().ToLower();
2)视图中:
@{ //获取当前路由的区域名称
var areaName = (ViewContext.RouteData.DataTokens["area"] == null ? "" : ViewContext.RouteData.DataTokens["area"]).ToString().ToLower();
var actionName=ViewContext.RouteData.Values["action"].ToString().ToLower();
var controllerName = ViewContext.RouteData.Values["controller"].ToString().ToLower();
}
3)Action中:
string areaName=RouteData.DataTokens["area"].ToString().ToLower();
string controllerName = RouteData.Values["controller"].ToString().ToLower();
string actionName = RouteData.Values["action"].ToString().ToLower();
获取控制器名称:
ViewContext.RouteData.Values["controller"].ToString();
获取Action名称:
ViewContext.RouteData.Values["action"].ToString();
获取路由参数值:
ViewContext.RouteData.Values[名称].ToString();
如:ViewContext.RouteData.Values["ID"].ToString(); 获取ID的值
获取area名称
在代码中:
ControllerContext.RouteData.DataTokens["area"]
在View中:
ViewContext.RouteData.DataTokens["area"]
附:过滤器上下文中跳转
filterContext.HttpContext.Response.Redirect("/Home/Contact");
或
filterContext.Result = new RedirectResult("/Home/Contact");
- MVC 在Action中,过滤器中,或视图中,获取当前请求的 控制器/视图/区域的名字及跳转
- .NET MVC 在action中,过滤器中,或视图中,如何分别获取 当前请求的 控制器/视图/区域 的名字
- .NET MVC 获取 当前请求的 控制器/视图/区域 的名字
- 在子视图中获取父视图的控制器
- 如何在代理方法中判断当前请求的视图控制器
- MVC下在控制器与试图中获取当前页面的URL与controller、action
- iOS在当前视图中推出另外一个背景透明的视图控制器
- iOS开发中如何在View视图中获取到该视图的控制器
- MVC里ActionResult或ViewResult跳转到当前控制器下对应的视图里的做法
- MVC过滤器 OnActionExecuting() 在过滤器中获取触发控制器,Action 等
- asp.net mvc在一个控制器中返回另外一个控制器的视图
- 获取当前视图所在的视图控制器
- 在同一个页面中加载不同的子视图时,传值不需要再初始化字控制器,直接获取当前需要的子视图
- 获取当前视图控制器present的控制器
- 在子视图中实现调用控制器里面的跳转方法这里介绍三种方法
- MVC中 使用带参数的Action渲染部分视图
- ASP.NET MVC 在控制器中接收视图表单POST过来的数据方法
- Yii在控制器中对视图js的控制
- Java开发中利用枚举类来列举各个同一类型不同的值的情况
- Java中Synchronized的用法
- Boundless SDK应用发布
- 《redis入门指南》读书笔记
- vim 常用命令
- MVC 在Action中,过滤器中,或视图中,获取当前请求的 控制器/视图/区域的名字及跳转
- golang的参数验证
- [C++]高效使用c++11--理解auto类型推导
- Codeforces700BConnecting Universities(算贡献)
- 2016.7.24 (c++编程思想)
- Excel动态合并行、合并列
- [Leetcode]74. Search a 2D Matrix
- mongodb 使用python作客户端
- HDU 4455 Substrings 第37届ACM/ICPC 杭州赛区现场赛 C题 (DP)