我正在使用连接字符串中的
Transaction Binding=Explicit Unbind
,正如这里建议的那样,因为我同时使用了具有超时的TransactionScope。问题是,在被处理后连接似乎并没有关闭,最终连接池中就没有可用连接了。当我修改了TransactionTimeoutIssueDemo(参见链接),并使用循环足够多次地运行TransactionScopeTest()(使用显式解除绑定的连接字符串)时,我得到了相同的结果,用尽了连接池中的所有可用连接。连接池中的默认连接数为100,但可以通过使用设置Max Pool Size=10
来更改。似乎即使SqlConnection和TransactionScope都使用了using
语句,使用显式解除绑定时连接也不会被释放。有人知道如何处理吗?