.NetCore 在不同位置添加过滤器

前言

ParaModelValidateAttribute(参数校验)ErrorCatch(错误捕捉)为例。

在方法上添加(局部)

这种方式比较灵活

    [ParaModelValidate]
    [ErrorCatch]  
    public class BaseController : ControllerBase
    {
        public ContentResult JsonResult(dynamic data = null)
        {
            ContentResult result = JsonContentResultBuilder.BuildViewJsonResult(data);

            return result;
        }
    }

在Startup中添加(全局)

这种方式应用于所有方法

        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers();

            services.AddControllersWithViews().AddNewtonsoftJson();

            #region 配置过滤器

            services.AddControllersWithViews(options => {
                options.Filters.Add(typeof(ParaModelValidateAttribute));
            });

            services.AddControllersWithViews(options => {
                options.Filters.Add(typeof(ErrorCatchAttribute));
            });

            #endregion

        }

上一篇:Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一)


下一篇:netcore发布时 swagger xml发布丢失问题