我们需要更改其中一个表,使用Guid
作为主键而不是int
。该系统正在生产中使用,看来这种变化需要一些额外的工作,而不是通常的add-migration
。
此表有两个FK引用,这意味着需要修改总共3个表。
使用Code First时应如何处理?
public class TableA
{
public int Id { get; set; }
public String Name { get; set; }
public bool IsActive { get; set; }
}
public class TableA
{
public Guid Id { get; set; }
public String Name { get; set; }
public bool IsActive { get; set; }
}
答案 0 :(得分:0)
首先对代码进行更改,然后安装或托管您的应用程序,并从新更改中创建新数据库。现在您拥有包含新更改的数据库。因此,在生产中的一个(在备份之后并在测试服务器中导入它)和新的一个(使用新的更改)之间进行区分,现在您可以从差异中为生产创建升级脚本。然后首先升级生产数据库,然后发布您的应用程序