class Person
{
public int Id { get; set; }
//omitted for brevity
public bool IsActive { get; set; }
}
class Person
{
public int Id { get; set; }
//omitted for brevity
public int Status { get; set; }
}
enum Status
{
Active,
Inactive,
NoState,
}
Person是一个包含数据的数据库表。由于新的要求,我想删除IsActive并拥有状态枚举。我还想将数据从IsActive列移动到Status列而不会丢失它。我使用的是EF Code First。我该怎么做呢?
答案 0 :(得分:0)
我终于解决了这个问题。我遵循的步骤如下:
示例代码
public partial class AlterStatusEnum : DbMigration
{
public override void Up()
{
RenameColumn("dbo.Person", "IsActive", "Status");
AlterColumn("dbo.Person", "Status", c => c.Int(nullable: false));
}
public override void Down()
{
// Removed for brevity
}
}
简而言之,我所做的就是重命名现有列并更改其数据类型。