entity-framework-core - EntityFramework更新数据库多个数据库上下文添加表不创建数据库
问题描述
我有两个独立的数据库上下文,并希望每个数据库上下文都有一个数据库。当我进行 entityfirst 迁移时,为什么不创建单独的数据库?相反,一个数据库上下文是在另一个上下文中创建一个表,即使我明确指定了 -context 参数。
appsetting.json
"ConnectionStrings": {
"BuildAppDb": "Server=DESKTOP-BJR3FMP\\SQLEXPRESS;Database=EasyBuilderApp;Trusted_Connection=True;",
"LicenseKeyDb": "Server=DESKTOP-BJR3FMP\\SQLEXPRESS;Database=EstiframeSoftwareLicenser;Trusted_Connection=True;"
},
上下文
public partial class BuildAppDbContext : DbContext
{
public BuildAppDbContext(DbContextOptions<BuildAppDbContext> options)
: base(options)
{
}
public DbSet<PartCompletion> PartCompletions { get; set; }
}
public class LicenseKeyDbContext : DbContext
{
public LicenseKeyDbContext(DbContextOptions<LicenseKeyDbContext> options)
: base(options)
{
}
public DbSet<LicenseReg> RegLicenses { get; set; }
}
startup.cs 配置服务
//DATABASE CONNECTIONS
string connectionString = _configuration.GetConnectionString("LicenseKeyDb");
services.AddDbContext<LicenseKeyDbContext>(options => options.UseSqlServer(connectionString));
connectionString = _configuration.GetConnectionString("BuildAppDb");
services.AddDbContext<BuildAppDbContext>(options => options.UseSqlServer(connectionString));
包管理器控制台命令
add-migration -context BuildAppDbContext
update-database -context BuildAppDbContext
add-migration -context LicenseKeyDbContext
update-database -context LicenseKeyDbContext
结果 ??为什么
当它应该为 EstiframeSoftwareLicenser 数据库添加整个数据库时,它正在向 EasyBuilderApp 数据库添加一个表