// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { var appOption = new AppAuthOption() { AppProvider = new AppAuthProvider(), TenantProvider = new TenantAuthProvider() }; var moduleOption = new ModuleAuthOption() { ModuleProvider = new ModuleAuthProvider() }; var userOption = new UserAuthOption() { UserProvider = new UserAuthProvider() }; services.AddControllers( opt => { opt.Filters.Add(new InitialContextAttribute()); opt.Filters.Add(new AppAuthAttribute(appOption)); opt.Filters.Add(new ModuleAuthAttribute(moduleOption)); opt.Filters.Add(new UserAuthAttribute(userOption)); }) .AddJsonOptions(jsonOpt => { jsonOpt.JsonSerializerOptions.IgnoreNullValues = true; jsonOpt.JsonSerializerOptions.PropertyNamingPolicy = null; }); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { var appOption = new AppAuthOption() { TenantProvider = new TenantAuthProvider() }; var userOption = new UserAuthOption() { UserProvider = new AdminAuthProvider(), FuncProvider = new FuncAuthProvider() }; // 因为需要全站校验是否登录,所以这里是全局处理 // 否则接口Controller基类处理即可,所有ajax请求统一处理,授权登录跳转,纯页面元素本身无需校验 services.AddControllers(opt => { opt.Filters.Add(new AppAuthAttribute(appOption)); opt.Filters.Add(new UserAuthAttribute(userOption)); }) .AddNewtonsoftJson(jsonOpt => { jsonOpt.SerializerSettings.NullValueHandling = NullValueHandling.Ignore; jsonOpt.SerializerSettings.ContractResolver = new DefaultContractResolver(); }); var builder = services.AddRazorPages(); #if DEBUG builder.AddRazorRuntimeCompilation(); // 调试状态下动态编译 #endif services.AddSpaStaticFiles(configuration => { configuration.RootPath = "ClientApp/antd_spa"; }); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddHttpClient(); var appOption = new AppAuthOption() { AppProvider = new AppAuthProvider(), }; var userOption = new UserAuthOption() { UserProvider = new UserAuthProvider(), FuncProvider = new FuncAuthProvider() }; services.AddControllers(opt => { opt.Filters.Add(new AppAuthAttribute(appOption)); opt.Filters.Add(new UserAuthAttribute(userOption)); }).AddJsonOptions(jsonOpt => { jsonOpt.JsonSerializerOptions.IgnoreNullValues = true; jsonOpt.JsonSerializerOptions.PropertyNamingPolicy = null; }); }