使用ASP.NET CORE EF,我已经使用以下命令从现有数据库中生成了模型类:
Scaffold-DbContext "Server=myserver\mydb;Database=mydb;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
现在我的数据库已更改,例如,我在表AppUser
中添加了新列。我不想使用迁移来保持与数据库的同步模型。
我已经在数据库中进行了更改,现在我想从当前数据库状态更新现有的模型类。任何建议如何做到这一点?
我应该删除现有模型类并使用相同的命令Scaffold-DbContext
重新生成,还是通过其他任何方式使现有模型类反映新的更改。
您是否正在寻找类似this的东西?
据我所知,要更新模型,您必须执行相同的命令来覆盖更改,但要附加另一个标志。
我记得使用-f(force)选项来覆盖更改:
Scaffold-DbContext "Server=myserver\mydb;Database=mydb;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -f
尽管也可以指出要更新的实体(表):
Scaffold-DbContext "Server=myserver\mydb;Database=mydb;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -t <table> -f