列的默认值的EF CF迁移

时间:2015-12-16 07:51:42

标签: c# entity-framework ef-code-first

在我的一个项目中,我使用了EF Code First aproach并用于通过[DefaultValue("true")]命令创建新的迁移。现在我需要创建一个迁移,它将在我的一个类中设置property的默认值。我尝试添加属性Add-Migration,然后使用var graphRequest = new GraphRequest ("/me?fields=name,gender", null, AccessToken.CurrentAccessToken.TokenString, null, "GET"); var requestConnection = new GraphRequestConnection(); requestConnection.AddRequest(graphRequest, (connection, result, error) => { var profile = result; }); requestConnection.Start(); 为其创建新的迁移,但此迁移为空。似乎EF没有注意到任何变化。有没有办法只为其中一个类属性设置默认值来创建迁移?

1 个答案:

答案 0 :(得分:0)

你没有提供你想要创建迁移的类的任何结构......所以我在一个演示类上发布了一个迁移..

如果您创建的迁移为空,请尝试在下面添加代码

public override void Up()
{
    AlterColumn("dbo.YourTableName", "ColumnName", c => c.String(defaultValueSql: "Khaled Maruf"));
}

如果您的表格列中包含过去的数据,请尝试使用下面的

public override void Up()
{
    Sql("UPDATE dbo.YourTableName SET ColumnName = 'Khaled Maruf' WHERE ColumnName IS NULL");
    AlterColumn("dbo.YourTableName", "ColumnName", c => c.String(defaultValueSql: "Khaled Maruf"));
}

希望这会有所帮助......