Files
Singer-BE/Singer_Hexdive/ApplicationDbContext.cs

38 lines
1.5 KiB
C#

using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Design;
using Microsoft.Extensions.Configuration;
using Singer_Hexdive.Models;
using System.IO;
namespace Singer_Hexdive
{
public class ApplicationDbContext : DbContext
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : base(options) { }
public DbSet<IdentificationType> IdentificationTypes { get; set; }
public DbSet<MerchantBankDetails> MerchantBankDetails { get; set; }
public DbSet<MerchantBusinessDetail> MerchantBusinessDetail { get; set; }
public DbSet<MerchantPersonalDetail> MerchantPersonalDetail { get; set; }
public DbSet<MerchantShareHolders> MerchantShareHolders { get; set; }
public DbSet<MerchantDirectors> MerchantDirectors { get; set; }
}
public class ApplicationDbContextFactory : IDesignTimeDbContextFactory<ApplicationDbContext>
{
public ApplicationDbContext CreateDbContext(string[] args)
{
var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: false)
.Build();
var optionsBuilder = new DbContextOptionsBuilder<ApplicationDbContext>();
var connectionString = config.GetConnectionString("DefaultConnection");
optionsBuilder.UseMySql(connectionString, ServerVersion.AutoDetect(connectionString));
return new ApplicationDbContext(optionsBuilder.Options);
}
}
}