我的数据库上下文类如下:
Public Class DataContext
Inherits DbContext
Public Sub New()
MyBase.New("WorkOrderConnectionString")
End Sub
End Class
然后我在这个DLL的配置文件中有一个连接字符串。
<connectionStrings>
<add name="WorkOrderConnectionString" connectionString="Server=(local); Database=db1;uid=user1;password=password1" providerName="System.Data.SqlClient" />
</connectionStrings>
我在类中添加了两个新字段,并希望为它生成更新SQL脚本。但是当我使用以下语句时,它是为整个数据库生成脚本。
Update-Database -Script
它应该只生成两个新字段的方式是什么......如下所示 改变表....添加列... 使用以下实体框架版本。
运行时版本:v4.0.30319 版本:6.0.0.0
干杯
答案 0 :(得分:0)
实体框架进行比较以生成脚本,因此如果您有现有数据库,则需要创建它的初始快照,以便只包含后续更改。
运行此命令以制作初始快照:
add-migration Initial -IgnoreChanges
update-database
https://msdn.microsoft.com/en-us/data/dn579398.aspx?f=255&MSPPError=-2147217396#option1
现在您可以更改模型,脚本将是上次迁移和当前迁移之间的差异。
如果您进行了一系列迁移,则可以使用-SourceMigration和-TargetMigration选项仅生成这些更改。 https://msdn.microsoft.com/en-us/data/jj591621.aspx#script