22 lines
769 B
C#
22 lines
769 B
C#
using static LiteCharms.Features.TechShop.Extensions.Postgres;
|
|
|
|
namespace LiteCharms.Features.TechShop.Postgres;
|
|
|
|
public class ShopDbContextFactory : IDesignTimeDbContextFactory<ShopDbContext>
|
|
{
|
|
public ShopDbContext CreateDbContext(string[] args)
|
|
{
|
|
var configuration = new ConfigurationBuilder()
|
|
.SetBasePath(Directory.GetCurrentDirectory())
|
|
.AddUserSecrets(typeof(ShopDbContext).Assembly)
|
|
.AddJsonFile("appsettings.json")
|
|
.AddEnvironmentVariables()
|
|
.Build();
|
|
|
|
var optionsBuilder = new DbContextOptionsBuilder<ShopDbContext>();
|
|
optionsBuilder.UseNpgsql(configuration.GetConnectionString(ShopDbConfigName));
|
|
|
|
return new ShopDbContext(optionsBuilder.Options);
|
|
}
|
|
}
|