gpt4 book ai didi

c# - Entity Framework 事务 : What is better performance-wise?

转载 作者:行者123 更新时间:2023-11-30 21:15:11 25 4
gpt4 key购买 nike

哪个性能更好:

using (GADEEntities context = new GADEEntities(_connectionString))
{
using (TransactionScope transaction = new TransactionScope())
{
AddToContext1(context);
AddToContext2(context);
AddToContext3(context);
...

context.SaveChanges();

transaction.Complete();
}
}

using (GADEEntities context = new GADEEntities(_connectionString))
{
using (TransactionScope transaction = new TransactionScope())
{
AddToContext1(context);
context.SaveChanges();

AddToContext2(context);
context.SaveChanges();

AddToContext3(context);
context.SaveChanges();
...

transaction.Complete();
}
}

在任何时候,这都可以转化为 5000 多次插入到客户端计算机上的数据库中。这两种方式有什么不同吗?

最佳答案

很有可能您的第一个版本总是更快,这取决于 AddToContext 的具体作用。如果您的 AddToContext 方法向上下文添加一个或仅几个新对象,它肯定会快得多。在每次插入(可能还有更新和删除)后调用 SaveChanges 会极大地降低性能。

以下是类似问题中的一些测量值:

Fastest Way of Inserting in Entity Framework

关于c# - Entity Framework 事务 : What is better performance-wise?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5823536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com