在ASP中强制重定向属性.asp.net MVC之前从ASP中的控制器到达一段.净MVC
本文关键字:MVC ASP 控制器 一段 重定向 属性 asp net | 更新日期: 2023-09-27 17:54:35
可能是一个简单的问题。请让我告诉你我的问题是什么。
我有一个自定义属性,比如
public class MyCustomAttribute: ActionFilterAttribute
{
public override void OnActionExecuting( ActionExecutingContext filterContext )
{
if(somethingTrue) {
filterContext.Result = new RedirectToRouteResult ( ... );
}
}
}
和控制器类
[MyCustom]
public class ContactController: Controller
{
protected override void OnResultExecuting( ResultExecutingContext filterContext )
{
// so something
}
}
如果我把断点放到OnResultExecuting
方法,即使我把一个属性放在控制器类的顶部,它也会到达。
我希望控制器不会到达OnResultExecuting
方法,因为我创建了一个重定向结果。
还是我的问题是我没有正确理解属性?
我猜你想跳过OnResultExecuting
,所以我宁愿写下面的代码:-
public override void OnActionExecuting( ActionExecutingContext filterContext)
{
if (true)
{
//Create your result
filterContext.Result = new EmptyResult();
}
else
base.OnActionExecuting(filterContext);
}