我们在输入迁移命令
Add-Migration init
后发生错误!
错误的原因我就不说了,直接上解决方法!
第一步:
先创建一个DbContextDesignTimeFactory类
第二步:继承
IDesignTimeDbContextFactory
<MyDbContext>
在<>中
写入自己的Dbcontext,
并实现改接口
第三步:在接口实现的方法中配置连接数据库的代码(本案例是.net6的配置如有差异请微改)
现在我们在来写迁移命令(
记得把原来的Remove
)
已经不报错了,在执行Update-Database就完成迁移了
全部实现代码如下:
/// <summary>
/// 1.写一个类
/// 2.实现IDesignTimeContextFactory接口
/// 3.返回Dbcontext类就行了
/// </summary>
public class DbContextDesignTimeFactory : IDesignTimeDbContextFactory<MyDbContext>
{
public MyDbContext CreateDbContext(string[] args)
{
DbContextOptionsBuilder<MyDbContext> builder= new DbContextOptionsBuilder<MyDbContext>();
builder.UseSqlServer("server=.;Database=IdentityDay1; user id=sa; Password=123456");
return new MyDbContext(builder.Options);
}
}
版权声明:本文为dawfwafaew原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。