【发布时间】:2017-02-23 17:39:43
【问题描述】:
我刚刚注意到 EF(此处使用版本 5)不提供 DeleteAsync()/AddAsync()。我还注意到像这样的项目:
https://github.com/zzzprojects/EntityFramework-Plus
请在事后提供DeleteAsync()。为什么 EF 不提供开箱即用的DeleteAsync()?只是好奇。
附录:正如 EF-Plus 的维护者所指出的,我提到的“DeleteAsync”风格与 EF 的“Delete”/“DeleteAsync”有些不同,因为前者在查询目标元素上操作 将在 db/db-server 上匹配,而 EF 的 Delete 对 在调用“Delete()”之前已经检索到的元素进行操作。尽管这些方法的签名存在差异,但我的问题提出的最初关注仍然存在。
【问题讨论】:
-
它确实提供了
Remove和SaveChangesAsync -
当您在 EF 中执行
Remove、Add、Update时,更改不会保留,直到您运行SaveChanges。它有它的异步模拟SaveChangesAsync -
嗯.. 我从来没有使用过那个特定的库,但是看看their implementation of
DeleteAsync- 你在这里没有得到任何有用的东西。观看the MSDN video about how async "library methods shouldn't lie"。该库中的代码正是这样做的。 -
这里发送给图书馆作者的提示:github.com/zzzprojects/EntityFramework-Plus/issues/131
-
+1 @MattJohnson 感谢您收看并消除混乱。您提供的链接是纯金的。如今,通过提出简单的问题可以学到什么,真是了不起! :)
标签: c# sql entity-framework