fengling-risk-control/Fengling.RiskControl.Infrastructure/DesignTimeRiskControlDbContextFactory.cs

24 lines
846 B
C#

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
using Microsoft.Extensions.Logging;
namespace Fengling.RiskControl.Infrastructure;
public class DesignTimeRiskControlDbContextFactory : IDesignTimeDbContextFactory<RiskControlDbContext>
{
private readonly ILoggerFactory _loggerFactory;
public DesignTimeRiskControlDbContextFactory(ILoggerFactory loggerFactory)
{
_loggerFactory = loggerFactory;
}
public RiskControlDbContext CreateDbContext(string[] args)
{
var optionsBuilder = new DbContextOptionsBuilder<RiskControlDbContext>();
optionsBuilder.UseNpgsql("Host=localhost;Database=RiskControl;Username=postgres;Password=postgres");
optionsBuilder.UseLoggerFactory(_loggerFactory);
return new RiskControlDbContext(optionsBuilder.Options);
}
}