// This method gets called by the runtime. Use this method to add services to the container. public IServiceProvider ConfigureServices(IServiceCollection services) { services.AddCors(); var cors = new DefaultCorsPolicyService(new Logger <DefaultCorsPolicyService>(new LoggerFactory())) { AllowAll = true }; services.AddSingleton <ICorsPolicyService>(cors); var connectionString = Configuration["ConnectionStrings:DBConnection"]; //Begin Identity Configuration services.AddDbContext <ApplicationDbContext>(options => options.UseSqlServer(connectionString)); services.AddIdentity <ApplicationUser, IdentityRole>() .AddEntityFrameworkStores <ApplicationDbContext>() .AddDefaultTokenProviders(); services.AddMvc(); services.AddIdentityServer() .AddDeveloperSigningCredential() .AddInMemoryApiResources(IdentityServerConfiguration.ApiResources()) .AddInMemoryClients(IdentityServerConfiguration.Clients()) .AddInMemoryIdentityResources(IdentityServerConfiguration.IdentityResources()) .AddTestUsers(TestUsers.GetUsers()); //End Identity Configuration var container = new WindsorContainer(); Bootstrapper.WireUp(container); UserManagementBootstrapper.Wireup(container, connectionString); var service = new WindsorServiceResolver(services, container).GetServiceProvider(); return(service); }