【问题标题】:EF CF Migration for Default Value of column列默认值的 EF CF 迁移
【发布时间】:2015-12-16 16:31:37
【问题描述】:

在我的一个项目中,我使用了 EF Code First 方法,并用于通过 Add-Migration MyMigration 命令创建新的迁移。现在我需要创建一个迁移,它将为我的一个类中的属性设置默认值。我尝试添加属性[DefaultValue("true")],然后使用Add-Migration 为它生成一个新的迁移,但这个迁移是空的。 EF 似乎没有注意到任何变化。有什么方法可以创建迁移,仅用于为其中一个类属性设置默认值?

【问题讨论】:

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


    【解决方案1】:

    您尚未提供要在其上创建迁移的类的任何结构......所以我在演示类上发布迁移......

    如果您创建的迁移为空,请尝试将下面的代码放在那里

    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"));
    }
    

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

    【讨论】:

    • 谢谢!但是有什么方法可以通过 Add-Migrations 命令自动创建?
    • 我对此一无所知...很抱歉无法为您提供帮助@Anton
    猜你喜欢
    • 2018-03-04
    • 2015-01-07
    • 2011-03-09
    • 2013-05-08
    • 2016-08-28
    • 2011-11-08
    • 2016-10-06
    • 2011-06-24
    • 2018-10-04
    相关资源
    最近更新 更多