使用Entity Framework 6将所有记录的1字段设置为给定值

时间:2017-04-20 07:52:05

标签: c# entity-framework entity-framework-6

假设我有一个表调用MyTable,有一个字段调用Del_flg,我想将MyTable中所有记录的Del_flg设置为true。在SQL Server中,可以使用以下查询轻松完成:

UPDATE MyTable SET [Del_flg] = 1

如何使用Entity Framework归档相同的结果?

1 个答案:

答案 0 :(得分:1)

您可以使用DbContext.Database

ExecuteSqlCommand方法
_myDbContext.Database.ExecuteSqlCommand("UPDATE MyTable SET [Del_flg] = 1");

如果您只需要执行一次此操作(因为您的数据模型已更改),则应考虑使用EF migration来设置此值。

public partial class SetDeletedFlagTrue : DbMigration {
    public override void Up() {
        const string update = "UPDATE MyTable SET [Del_flg] = 1";
        Sql(update);
    }

    public override void Down() { /* ... */}
}