我有一些C#,其中我在一个连接(ExecuteReader)上创建了一个读取器,然后对该读取器中的每一行执行另一个命令(使用ExecuteNonQuery).在这种情况下,我是在我的连接上使用MultipleActiveResultSets=True还是使用多个连接更好?

推荐答案

专门为此类操作添加了多个活动结果集(MARS),因此您不必同时打开两个连接即可读取SqlDataReader并执行其他批处理.

MARS与SQL Server 2005及以上版本兼容.引用MSDN文档:

在引入多个

有关更多信息,请参阅:

MSDN Library - MARS Overview

读取和更新数据的示例:

MSDN Library - Manipulating Data (MARS)向下滚动至"使用火星读取和更新数据"

.net相关问答推荐

如何按需计算一个值并将该值缓存在FP/F#中?

ECS服务无法从Cognito获取配置

在 .NET 反射中使用 GetProperties() 和 BindingFlags.DeclaredOnly

如何中止任务,如中止线程(Thread.Abort 方法)?

在 Moq Callback() 调用中设置变量值

如何通过 LINQ 比较没有时间的 DateTime?

找不到 Assert.Fail 和 Assert.Pass 或等效项

日期时间是什么意思?在 C# 中是什么意思?

何时在 C#/.NET 中使用指针?

在 C# 中与块等效?

.net 自定义配置如何不区分大小写解析枚举 ConfigurationProperty

Dapper 是否支持 SQL 2008 表值参数?

何时使用抽象类?

如何使用 C# 创建自签名证书?

为什么发布和调试模式下的代码行为不同?

在 .NET 中获取默认打印机的最佳方法是什么

安装带有恢复操作的 Windows 服务以重新启动

将 SignalR 2.0 .NET 客户端重新连接到服务器集线器的最佳实践

作者主签名的时间戳发现了一个建链问题:UntrustedRoot: self-signed certificate in certificate chain

浮动与双重性能