我想允许用户通过在列表中选择它们并按下删除/确认按钮来删除或确认多条记录。
我已经搜索过,似乎EF
不支持批量更新/删除,那么以下方法之间有什么区别 - 直接操作数据库是否有任何负面影响。
1-使用ExecuteSqlCommand
方法直接运行查询database
。
2-或entities
使用选定的 ID 创建,将其设置state
为已修改/删除,然后调用context.SaveChanges()
.
我想允许用户通过在列表中选择它们并按下删除/确认按钮来删除或确认多条记录。
我已经搜索过,似乎EF
不支持批量更新/删除,那么以下方法之间有什么区别 - 直接操作数据库是否有任何负面影响。
1-使用ExecuteSqlCommand
方法直接运行查询database
。
2-或entities
使用选定的 ID 创建,将其设置state
为已修改/删除,然后调用context.SaveChanges()
.
我会选择第二种选择——你有一个涵盖所有更新的事务,这可能是一件好事。(在某些情况下不是)
这也是执行此操作的最简单/最快的方法。
如果您将遇到性能问题,请继续优化它 - 更改为 SQL 或将 ORM 更改为 NHibernate 或做任何您想做的事情。
此外 - 有一条规则说先写,然后优化。不是反过来。
关于选项1的想法:
关于选项2的想法: