繁体   English   中英

使用实体框架“清除”所有表的更好方法

[英]A better way to “Clear” all tables using 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);
        }

我敢肯定,必须有一种更好的,更优雅的方式来做到这一点……你们如何完成这种任务?

我们通过从备份还原“基准”数据库来做到这一点。

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM