小编low*_*ern的帖子

在异常情况下正确关闭数据库连接的方法

如果存在异常,以下代码是否会打开连接?

我正在使用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);
}
Run Code Online (Sandbox Code Playgroud)

当然更好的方法是在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();
}
Run Code Online (Sandbox Code Playgroud)

.net c# database-connection sql-server-ce

15
推荐指数
3
解决办法
3万
查看次数

你称它们为功能,程序或方法吗?

考虑一个标准的c#'函数'

public void foo(){// some code}

在c或c ++中,这被称为"函数" - 即使没有参数也没有返回任何值.在另一种语言中,它可能是一个"程序".在面向对象时,如果是一个类成员,它将被称为"方法".在c#中使用的正确术语是什么?

theory oop

5
推荐指数
1
解决办法
1407
查看次数

标签 统计

.net ×1

c# ×1

database-connection ×1

oop ×1

sql-server-ce ×1

theory ×1