SqlConnection和SqlCommand编程模式:哪一个更好?

时间:2016-02-02 07:15:26

标签: c# sql sql-server

private void a()
{

    string query = "";

    using (SqlConnection conn = new SqlConnection("connectionstring here"))
    {
        conn.Open();

        using (SqlCommand cmd = new SqlCommand(query, conn))
        {
            cmd.ExecuteQuery();
        }
        conn.Close();
    }
}

private void B()
{

    string query = "";
    SqlConnection conn = new SqlConnection("connectionstring here");

    conn.Open();

    SqlCommand cmd = new SqlCommand(query, conn);
    cmd.ExecuteQuery();

    conn.Close();
}

哪两种更好用?为什么?

2 个答案:

答案 0 :(得分:2)

第一个版本更好,因为您不必记住Close连接,因为SqlConnection包含在using语句中。不需要第一个版本中的conn.Close()调用。该连接将在finally的{​​{1}}块中关闭。

答案 1 :(得分:1)

根据经验:

  • 始终处置IDisposable s。
  • 最简单的方法是使用using

所以......