asp.net-mvc – 为什么调用base.OnActionExecuting(filterContext);?

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – 为什么调用base.OnActionExecuting(filterContext);?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我只是看着我的一些旧代码,我有一个动作过滤器(OnActionExecuting方法)

和在它的结尾我有

base.OnActionExecuting(filterContext);

为什么在周围搜索我看到了这么多次。我也看到在我的旧授权标记,我称为基地。

我应该总是调用基本方法吗?

解决方法

Should I be always be calling the base methods after?

这将取决于情况。

例如,在授权过滤器(从AuthorizeAttribute派生)中,如果调用基本方法,则将会执行内置到ASP.NET MVC中的所有现有授权逻辑。如果你不调用它,只有你的授权逻辑将被应用。

就其他标准动作过滤器(从ActionFilterAttribute派生),所有的OnActionExecuting,OnActionExecuted,OnResultExecuting和OnResultExecuted被定义为virtual,但它们的主体是空的,所以如果你调用或不是基础方法,它没有任何区别。

猜你在找的asp.Net相关文章