使用Entity Framework“清除”所有表的更好方法

时间:2010-07-22 14:46:35

标签: c# mysql entity-framework

嗨,目前我想清理我的桌子时,我使用暴力:

        inventario_dboEntities inv = new inventario_dboEntities();            

        foreach (var item in inv.espiromex_dampers)
        {
            inv.DeleteObject(item);
        }
        foreach (var item in inv.espiromex_detalles)
        {
            inv.DeleteObject(item);
        }
        foreach (var item in inv.espiromex_docs)
        {
            inv.DeleteObject(item);
        }

我相信必须有更优雅的方式才能做到这一点......你们怎么做这样的任务?

3 个答案:

答案 0 :(得分:2)

我们通过从备份中恢复“基线”数据库来实现。

答案 1 :(得分:2)

您在Entity Framework中的另一个选项是使用ExecuteStorecommand执行此操作 db.ExecuteStoreCommand(@“delete table1; delete table2; delete table3;”);

答案 2 :(得分:1)

我认为最好的方法和最佳做法是在查询浏览器中截断它们(因为你使用的是MySQL)或者@TheCloudlessSky说使用存储过程。

另外(但我不确定)你可以使用Reflection和一些奇特的东西。