ProductsDbContextFactory3
public class ProductsDbContextFactory : IDesignTimeDbContextFactory<ProductsDbContext> | |
{ | |
public ProductsDbContext CreateDbContext(string[] args) | |
{ | |
// Get environment | |
string environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); | |
// Build config | |
IConfiguration config = new ConfigurationBuilder() | |
.SetBasePath(Path.Combine(Directory.GetCurrentDirectory(), "../EfDesignDemo.Web")) | |
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) | |
.AddJsonFile($"appsettings.{environment}.json", optional: true) | |
.AddEnvironmentVariables() | |
.Build(); | |
// Get connection string | |
var optionsBuilder = new DbContextOptionsBuilder<ProductsDbContext>(); | |
var connectionString = config.GetConnectionString(nameof(ProductsDbContext)); | |
optionsBuilder.UseSqlServer(connectionString, b => b.MigrationsAssembly("EfDesignDemo.EF.Design")); | |
return new ProductsDbContext(optionsBuilder.Options); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment