Filter的多种注册

103 阅读1分钟

AOP:在不修改之前的代码为基础上,动态增加功能,但是我们现在做的无论是

ResourceFilter还是ActionFilter都是直接标记在方法上的,那么如果要对某一些

Action、或者对于某个项目整体生效呢?

方法注册:仅对当前方法生效

        [XXXXXXX]
        public IActionResult Index3()
        {
            return View();
        }

控制器(类)注册:对当前控制器下的所有Action都生效

namespace Advanced.NET6.Project.Controllers
{
    [XXXXXXX]
    public class FirstController : Controller
    {
        public IActionResult Index()
        {
            return View();
        }
    }
}

全局注册:对于项目中的所有方法都生效

builder.Services.AddControllersWithViews(a =>
{
    a.Filters.Add<XXXXXXX>();
});