【发布时间】:2019-12-26 05:37:56
【问题描述】:
如果出现异常,以下代码是否使连接保持打开状态?
我使用的是 Microsoft SQL 精简版数据库。
try
{
SqlCeConnection conn = new SqlCeConnection(ConnectionString);
conn.Open();
using (SqlCeCommand cmd =
new SqlCeCommand("SELECT stuff FROM SomeTable", conn))
{
// do some stuff
}
conn.Close();
}
catch (Exception ex)
{
ExceptionManager.HandleException(ex);
}
当然更好的方法是在 try 之前声明一个连接对象,在 try 块中建立连接并在 finally 块中关闭它?
SqlCeConnection conn = null;
try
{
conn = new SqlCeConnection(ConnectionString);
conn.Open();
using (SqlCeCommand cmd =
new SqlCeCommand("SELECT stuff FROM SomeTable", conn))
{
// do some stuff
}
}
catch (Exception ex)
{
ExceptionManager.HandleException(ex);
}
finally
{
if( conn != null ) conn.Close();
}
【问题讨论】:
标签: c# .net sql-server-ce database-connection