Should I be using SqlDataReader inside a “using” statement?

前端 未结 3 1642
醉酒成梦
醉酒成梦 2020-12-29 03:02

Which of the following two examples are correct? (Or which one is better and should I use)

In the MSDN I found this:

private static void ReadOrderDat         


        
3条回答
  •  伪装坚强ぢ
    2020-12-29 03:08

    Would it not be simpler to use this code?

        private static void ReadOrderData(string connectionString)
        {
            string queryString =
                "SELECT OrderID, CustomerID FROM dbo.Orders;";
    
            using (SqlDataReader reader = SqlHelper.ExecuteReader(connectionString, CommandType.Text, queryString))
            {
                // Call Read before accessing data.
                while (reader.Read())
                {
                    Console.WriteLine(String.Format("{0}, {1}",
                    reader[0], reader[1]));
                }
            }
        }
    

    This should dispose of the reader, and the implicit connection and command when the using is terminated.

    Or have I missed something?

提交回复
热议问题