React to options and hosting changes

This commit is contained in:
Hao Kung 2014-10-14 19:22:51 -07:00
parent b2d346769a
commit d375e87a4e
9 changed files with 12 additions and 17 deletions

View File

@ -10,7 +10,7 @@ namespace MusicStore.Models
public class ApplicationDbContext : IdentityDbContext<ApplicationUser> public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{ {
public ApplicationDbContext(IServiceProvider serviceProvider, IOptionsAccessor<IdentityDbContextOptions> optionsAccessor) public ApplicationDbContext(IServiceProvider serviceProvider, IOptions<IdentityDbContextOptions> optionsAccessor)
: base(serviceProvider, optionsAccessor.Options) : base(serviceProvider, optionsAccessor.Options)
{ {

View File

@ -8,7 +8,7 @@ namespace MusicStore.Models
{ {
public class MusicStoreContext : DbContext public class MusicStoreContext : DbContext
{ {
public MusicStoreContext(IServiceProvider serviceProvider, IOptionsAccessor<MusicStoreDbContextOptions> optionsAccessor) public MusicStoreContext(IServiceProvider serviceProvider, IOptions<MusicStoreDbContextOptions> optionsAccessor)
: base(serviceProvider, optionsAccessor.Options) : base(serviceProvider, optionsAccessor.Options)
{ {

View File

@ -55,7 +55,7 @@ namespace MusicStore.Models
private static async Task CreateAdminUser(IServiceProvider serviceProvider) private static async Task CreateAdminUser(IServiceProvider serviceProvider)
{ {
var options = serviceProvider.GetService<IOptionsAccessor<IdentityDbContextOptions>>().Options; var options = serviceProvider.GetService<IOptions<IdentityDbContextOptions>>().Options;
const string adminRole = "Administrator"; const string adminRole = "Administrator";
var userManager = serviceProvider.GetService<UserManager<ApplicationUser>>(); var userManager = serviceProvider.GetService<UserManager<ApplicationUser>>();

View File

@ -28,14 +28,14 @@ namespace MusicStore.Spa
public void ConfigureServices(IServiceCollection services) public void ConfigureServices(IServiceCollection services)
{ {
// Add options accessors to the service container // Add options accessors to the service container
services.ConfigureOptions<IdentityDbContextOptions>(options => services.Configure<IdentityDbContextOptions>(options =>
{ {
options.DefaultAdminUserName = Configuration.Get("DefaultAdminUsername"); options.DefaultAdminUserName = Configuration.Get("DefaultAdminUsername");
options.DefaultAdminPassword = Configuration.Get("DefaultAdminPassword"); options.DefaultAdminPassword = Configuration.Get("DefaultAdminPassword");
options.UseSqlServer(Configuration.Get("Data:IdentityConnection:ConnectionString")); options.UseSqlServer(Configuration.Get("Data:IdentityConnection:ConnectionString"));
}); });
services.ConfigureOptions<MusicStoreDbContextOptions>(options => services.Configure<MusicStoreDbContextOptions>(options =>
options.UseSqlServer(Configuration.Get("Data:DefaultConnection:ConnectionString"))); options.UseSqlServer(Configuration.Get("Data:DefaultConnection:ConnectionString")));
// Add MVC services to the service container // Add MVC services to the service container
@ -55,8 +55,6 @@ namespace MusicStore.Spa
public void Configure(IApplicationBuilder app) public void Configure(IApplicationBuilder app)
{ {
app.UsePerRequestServices();
// Initialize the sample data // Initialize the sample data
SampleData.InitializeMusicStoreDatabaseAsync(app.ApplicationServices).Wait(); SampleData.InitializeMusicStoreDatabaseAsync(app.ApplicationServices).Wait();
SampleData.InitializeIdentityDatabaseAsync(app.ApplicationServices).Wait(); SampleData.InitializeIdentityDatabaseAsync(app.ApplicationServices).Wait();

View File

@ -40,7 +40,7 @@ namespace MusicStore
//Note: ErrorPageOptions.ShowAll to be used only at development time. Not recommended for production. //Note: ErrorPageOptions.ShowAll to be used only at development time. Not recommended for production.
app.UseErrorPage(ErrorPageOptions.ShowAll); app.UseErrorPage(ErrorPageOptions.ShowAll);
app.UsePerRequestServices(services => app.UseServices(services =>
{ {
//If this type is present - we're on mono //If this type is present - we're on mono
var runningOnMono = Type.GetType("Mono.Runtime") != null; var runningOnMono = Type.GetType("Mono.Runtime") != null;
@ -60,7 +60,7 @@ namespace MusicStore
services.AddScoped<MusicStoreContext>(); services.AddScoped<MusicStoreContext>();
// Configure DbContext // Configure DbContext
services.ConfigureOptions<MusicStoreDbContextOptions>(options => services.Configure<MusicStoreDbContextOptions>(options =>
{ {
options.DefaultAdminUserName = configuration.Get("DefaultAdminUsername"); options.DefaultAdminUserName = configuration.Get("DefaultAdminUsername");
options.DefaultAdminPassword = configuration.Get("DefaultAdminPassword"); options.DefaultAdminPassword = configuration.Get("DefaultAdminPassword");

View File

@ -11,7 +11,7 @@ namespace MusicStore.Models
public class MusicStoreContext : IdentityDbContext<ApplicationUser> public class MusicStoreContext : IdentityDbContext<ApplicationUser>
{ {
public MusicStoreContext(IServiceProvider serviceProvider, IOptionsAccessor<MusicStoreDbContextOptions> optionsAccessor) public MusicStoreContext(IServiceProvider serviceProvider, IOptions<MusicStoreDbContextOptions> optionsAccessor)
: base(serviceProvider, optionsAccessor.Options) : base(serviceProvider, optionsAccessor.Options)
{ {

View File

@ -78,7 +78,7 @@ namespace MusicStore.Models
/// <returns></returns> /// <returns></returns>
private static async Task CreateAdminUser(IServiceProvider serviceProvider) private static async Task CreateAdminUser(IServiceProvider serviceProvider)
{ {
var options = serviceProvider.GetService<IOptionsAccessor<MusicStoreDbContextOptions>>().Options; var options = serviceProvider.GetService<IOptions<MusicStoreDbContextOptions>>().Options;
//const string adminRole = "Administrator"; //const string adminRole = "Administrator";
var userManager = serviceProvider.GetService<UserManager<ApplicationUser>>(); var userManager = serviceProvider.GetService<UserManager<ApplicationUser>>();

View File

@ -44,7 +44,7 @@ namespace MusicStore
services.AddScoped<MusicStoreContext>(); services.AddScoped<MusicStoreContext>();
// Configure DbContext // Configure DbContext
services.ConfigureOptions<MusicStoreDbContextOptions>(options => services.Configure<MusicStoreDbContextOptions>(options =>
{ {
options.DefaultAdminUserName = Configuration.Get("DefaultAdminUsername"); options.DefaultAdminUserName = Configuration.Get("DefaultAdminUsername");
options.DefaultAdminPassword = Configuration.Get("DefaultAdminPassword"); options.DefaultAdminPassword = Configuration.Get("DefaultAdminPassword");
@ -125,9 +125,6 @@ namespace MusicStore
public void Configure(IApplicationBuilder app) public void Configure(IApplicationBuilder app)
{ {
// Add services from ConfigureServices
app.UsePerRequestServices();
//Configure SignalR //Configure SignalR
app.UseSignalR(); app.UseSignalR();

View File

@ -66,7 +66,7 @@ namespace MusicStore
//Note: ErrorPageOptions.ShowAll to be used only at development time. Not recommended for production. //Note: ErrorPageOptions.ShowAll to be used only at development time. Not recommended for production.
app.UseErrorPage(ErrorPageOptions.ShowAll); app.UseErrorPage(ErrorPageOptions.ShowAll);
app.UsePerRequestServices(services => app.UseServices(services =>
{ {
// Add EF services to the services container // Add EF services to the services container
services.AddEntityFramework() services.AddEntityFramework()
@ -75,7 +75,7 @@ namespace MusicStore
services.AddScoped<MusicStoreContext>(); services.AddScoped<MusicStoreContext>();
// Configure DbContext // Configure DbContext
services.ConfigureOptions<MusicStoreDbContextOptions>(options => services.Configure<MusicStoreDbContextOptions>(options =>
{ {
options.DefaultAdminUserName = configuration.Get("DefaultAdminUsername"); options.DefaultAdminUserName = configuration.Get("DefaultAdminUsername");
options.DefaultAdminPassword = configuration.Get("DefaultAdminPassword"); options.DefaultAdminPassword = configuration.Get("DefaultAdminPassword");