C# SqlConnection.ServerVersion关闭后异常()

C# SqlConnection.ServerVersion关闭后异常(),c#,asp.net,.net,C#,Asp.net,.net,我打开一个SqlConnection SqlConnection Conn = new SqlConnection(...); Conn.Open(); ... Conn.Close(); Conn.Dispose(); //debugger breakpoint 当我在调试器中查看此断点时,Conn.ServerVersion抛出Sql异常: 连接关闭 当然,我关闭了连接,我应该这样做,但是这个异常只是一个可以忽略的东西吗?或者,如果我想避免出现这个异常,我应该采取不同的做法吗?除了保持它

我打开一个
SqlConnection

SqlConnection Conn = new SqlConnection(...);
Conn.Open();
...
Conn.Close();
Conn.Dispose();

//debugger breakpoint
当我在调试器中查看此断点时,
Conn.ServerVersion
抛出Sql异常:

连接关闭

当然,我关闭了连接,我应该这样做,但是这个异常只是一个可以忽略的东西吗?或者,如果我想避免出现这个异常,我应该采取不同的做法吗?除了保持它的开放性,我还需要做什么


我的理解是我的代码中没有任何异常,但我可能错了。(我是新来的)

你实际上没有问题

正如您在问题中所注意到的,您无法从关闭的连接获取服务器版本

当您在调试器中查看该属性时,将因此得到一个异常


只要您不尝试在实际代码中从关闭的连接访问它,您就完全可以了。

只要在处理完连接对象后避免检查它即可。(“医生,当我这样做的时候会很痛…”“那么就停止这样做吧!”)最简单也是最可靠的方法是使用
语句代替

using (var conn = new SqlConnection(...))
{
    conn.Open();
    ...
}
然后,
conn
在处理后将超出范围。请注意,您不需要调用
Close()
以及dispose,请注意局部变量的更常规名称