// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddMvcCore().AddApiExplorer(); services.AddControllers(); services.AddRazorPages(); services.Configure <CookiePolicyOptions>(options => { // This lambda determines whether user consent for non-essential cookies is needed for a given request. options.CheckConsentNeeded = context => true; options.MinimumSameSitePolicy = SameSiteMode.None; }); services.AddDbContext <ZipCoContext>(options => { options.UseSqlServer(Configuration.GetConnectionString("MSSQL")); }); // Set up dependency injection for controllers and services services.AddScoped <IService <AccountResponse, AccountRequest>, AccountService>(); services.AddScoped <IUserService, UserService>(); services.AddScoped <ILogger, Logger <AccountController> >(); services.AddScoped <ILogger, Logger <UserController> >(); // Dependencies from Repositories project RepositoriesDependencies.Register(services); // Register the Swagger generator, defining 1 or more Swagger documents services.AddSwaggerGen(options => { options.SwaggerDoc("v1", new OpenApiInfo { Title = "ZipCo API", Version = "v1" }); // Get xml comments path string xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; string xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); // Set xml path options.IncludeXmlComments(xmlPath); }); }
// This method gets called by the runtime. Use this method to add services to the container. // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940 public void ConfigureServices(IServiceCollection services) { services.AddMvc() .SetCompatibilityVersion(Microsoft.AspNetCore.Mvc.CompatibilityVersion.Version_2_1) .AddJsonOptions(o => { if (o.SerializerSettings.ContractResolver != null) { var castedResolver = o.SerializerSettings.ContractResolver as DefaultContractResolver; castedResolver = new CamelCasePropertyNamesContractResolver(); } }); var connectionString = Configuration["Storage:connectionString"]; services.AddDbContext <AppCtx>(o => { o.UseSqlServer(connectionString); o.EnableSensitiveDataLogging(); }); services.AddCors(opt => { opt.AddPolicy("CorsPolicy", builder => { builder.AllowAnyMethod().AllowAnyHeader() .AllowAnyOrigin().AllowCredentials() .WithExposedHeaders("X-Pagination"); }); }); RepositoriesDependencies.Config(services); ServicesDependencies.Config(services); }