// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.Configure <ForwardedHeadersOptions>(options => { options.KnownProxies.Add(IPAddress.Parse("10.0.0.100")); }); //Configure loging Log.Logger = new LoggerConfiguration() .ReadFrom.Configuration(Configuration) .WriteTo.Console() .CreateLogger(); services.AddSingleton(Log.Logger); //Configure db context EntityFrameworkConfiguration.ConfigureService(services, Configuration); //Add auto mapper on start up services.AddAutoMapper(typeof(Startup)); //Configure dependency injection IocContainerConfiguration.ConfigureService(services); //Configure jwt JwtConfiguration.ConfigureService(services, Configuration); // Configure your policies services.AddAuthorization(options => { options.AddPolicy(nameof(Role.SuperAdmin), policy => policy.RequireClaim(nameof(Role.SuperAdmin))); options.AddPolicy(nameof(Role.Administrator), policy => policy.RequireClaim(nameof(Role.Administrator))); options.AddPolicy(nameof(Role.User), policy => policy.RequireClaim(nameof(Role.User))); }); // Configure action filter attribute services.AddControllers(opt => { opt.Filters.Add(typeof(ValidateModel)); }); // Configure enforce lowercase routing services.AddRouting(options => options.LowercaseUrls = true); SwaggerConfiguration.ConfigureService(services); // Config for upload file services.Configure <FormOptions>(o => { o.ValueLengthLimit = int.MaxValue; o.MultipartBodyLengthLimit = int.MaxValue; o.MemoryBufferThreshold = int.MaxValue; }); // Config Api Version services.AddApiVersioning(); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddAutoMapper(typeof(MappingProfile)); ConfigurationOptions.ConfigureService(services, Configuration); // IOC containers IocContainerConfiguration.ConfigureService(services, Configuration); // JWT containers JwtConfiguration.ConfigureService(services, Configuration); // Swagger API documentation SwaggerConfiguration.ConfigureService(services); // Cors Orgin CorsOrginConfiguration.ConfigureService(services); }