0

正如标题所暗示的,我一直在研究导致此错误的原因。然后我看到主要表明它很可能与许可证号有关。但是,在最底部有一个回复建议为连接对象调用 dispose()也是一种解决方案。这是真的?

注意: 我们使用的是 Entity Framework 4.0 和 SQLAnywhere 16

更新:我发现这篇文章似乎暗示调用 dispose 对用户连接没有任何影响。有什么想法吗?非常感谢!

4

1 回答 1

0

凯文在评论中提出了一个很好的观点。最简单的方法是将连接放在 using 语句中,以便在不使用时自动丢弃。

// connectionString must be set up
using (SqlConnection connection = new SqlConnection(connectionString))
{
    // Do stuff with connection to DB
}

您想知道是否需要调用 Dispose 以及它是否会对用户连接产生影响。实际上, using 语句调用 Dispose() 本身,如您在此处所见。“ using 语句以正确的方式调用对象上的 Dispose 方法......”所以,我相信您的问题可能是因为您打开/关闭连接的原始方式留下了挂起的连接。相反,使用该using语句,一旦代码离开块,您的连接将自动关闭。

于 2013-08-28T17:37:52.240 回答