public void ConfigureServices(IServiceCollection services) { Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); services.AddHttpContextAccessor(); services.AddControllers() .AddXmlSerializerFormatters() .AddJsonOptions(options => { options.JsonSerializerOptions.WriteIndented = false; options.JsonSerializerOptions.IgnoreNullValues = true; options.JsonSerializerOptions.Converters.Add(new ApiDateTimeConverter()); options.JsonSerializerOptions.Converters.Add(new FileEntryWrapperConverter()); }); services.AddMemoryCache(); services.AddAuthentication("cookie") .AddScheme <AuthenticationSchemeOptions, CookieAuthHandler>("cookie", a => { }); var builder = services.AddMvcCore(config => { var policy = new AuthorizationPolicyBuilder().RequireAuthenticatedUser().Build(); config.Filters.Add(new AuthorizeFilter(policy)); config.Filters.Add(new TypeFilterAttribute(typeof(TenantStatusFilter))); config.Filters.Add(new TypeFilterAttribute(typeof(PaymentFilter))); config.Filters.Add(new TypeFilterAttribute(typeof(IpSecurityFilter))); config.Filters.Add(new TypeFilterAttribute(typeof(ProductSecurityFilter))); config.Filters.Add(new CustomResponseFilterAttribute()); config.Filters.Add(new CustomExceptionFilterAttribute()); config.Filters.Add(new TypeFilterAttribute(typeof(FormatFilter))); config.OutputFormatters.RemoveType <XmlSerializerOutputFormatter>(); config.OutputFormatters.Add(new XmlOutputFormatter()); }); var diHelper = new DIHelper(services); diHelper .AddCookieAuthHandler() .AddCultureMiddleware() .AddIpSecurityFilter() .AddPaymentFilter() .AddProductSecurityFilter() .AddTenantStatusFilter(); diHelper.AddNLogManager("ASC.Files"); diHelper .AddDocumentsControllerService() .AddEncryptionControllerService() .AddFileHandlerService() .AddChunkedUploaderHandlerService() .AddThirdPartyAppHandlerService() .AddDocuSignHandlerService(); services.AddAutofac(Configuration, HostEnvironment.ContentRootPath); }
public void ConfigureServices(IServiceCollection services) { Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); services.AddHttpContextAccessor(); services.AddControllers() .AddNewtonsoftJson() .AddXmlSerializerFormatters(); services.AddTransient <IConfigureOptions <MvcNewtonsoftJsonOptions>, CustomJsonOptionsWrapper>(); services.AddMemoryCache(); services.AddAuthentication("cookie") .AddScheme <AuthenticationSchemeOptions, CookieAuthHandler>("cookie", a => { }); var builder = services.AddMvcCore(config => { var policy = new AuthorizationPolicyBuilder().RequireAuthenticatedUser().Build(); config.Filters.Add(new AuthorizeFilter(policy)); config.Filters.Add(new TypeFilterAttribute(typeof(TenantStatusFilter))); config.Filters.Add(new TypeFilterAttribute(typeof(PaymentFilter))); config.Filters.Add(new TypeFilterAttribute(typeof(IpSecurityFilter))); config.Filters.Add(new TypeFilterAttribute(typeof(ProductSecurityFilter))); config.Filters.Add(new CustomResponseFilterAttribute()); config.Filters.Add(new CustomExceptionFilterAttribute()); config.Filters.Add(new TypeFilterAttribute(typeof(FormatFilter))); config.OutputFormatters.RemoveType <XmlSerializerOutputFormatter>(); config.OutputFormatters.Add(new XmlOutputFormatter()); }); var diHelper = new DIHelper(services); diHelper .AddCookieAuthHandler() .AddCultureMiddleware() .AddIpSecurityFilter() .AddPaymentFilter() .AddProductSecurityFilter() .AddTenantStatusFilter(); diHelper.AddNLogManager("ASC.Files"); diHelper .AddDocumentsControllerService() .AddEncryptionControllerService(); services.AddAutofac(Configuration, HostEnvironment.ContentRootPath); }