我有一个 SQL CLR 触发器,其中有许多SqlDataReader
调用(除其他外),在生产系统中,用户会遇到类似的错误
在执行用户定义的例程或聚合“MyTrigger”期间发生 .NET Framework 错误:
System.InvalidOperationException:已经有一个打开的 DataReader 与此命令关联,必须先关闭。
System.InvalidOperationException:
在
System.Data.SqlClient.SqlInternalConnectionSmi.ValidateConnectionForExecute(SqlCommand 命令)
...
但是我无法在我的测试环境中重现这一点。我正在考虑设置MutltipleActiveResultSets=true
,但当然在 CLR 触发器中没有要定义的连接字符串(或者是否存在......) - 所以是否可以在MARS
此处的某处设置为 true,或者我是否需要继续寻找替代解决方案?