日期:2014-05-17  浏览次数:20608 次

在函数内部用using,是什么意思
我平时都是在单元头看见,用在函数内部是什么意思?

C# code

        private DataTable GetMenuToDataTable(string query, DataTable dt) 
        {
            DataBase DB = new DataBase();

            using (SqlConnection conn = new SqlConnection(DB.ConnStr)) 
            { 
                SqlCommand cmd = new SqlCommand(query, conn); 
                SqlDataAdapter ada = new SqlDataAdapter(cmd); ada.Fill(dt); 
            } 
            return dt; 
        }




------解决方案--------------------
using块结束时会自动把conn给Dispose掉,Dispose时也会自动调用conn.Close()……
------解决方案--------------------
就是这样
探讨

using块结束时会自动把conn给Dispose掉,Dispose时也会自动调用conn.Close()……

------解决方案--------------------
呵呵,基本语法问题。

using 相当于如下代码:

try
{
obj = new obj();
...
}
finally
{
obj.dispose();
}
------解决方案--------------------
using 必须是实现IDispose接口的

using实际效果如下

try
{
}
finally
{
this.dispose();
}