Gab*_*boy 3 c# sql-server enterprise-library
我正在使用库microsoft.practices.enterpriselibrary访问SQL Server数据库。我想知道使用ExecuteNonQuery方法时如何关闭连接?
即:
using Microsoft.Practices.EnterpriseLibrary.Data.Sql;
SqlDatabase db = null;
try
{
db = new SqlDatabase(stringConnection);
db.ExecuteNonQuery("storedprocedure", someParams);
}
catch (Exception ex)
{
}
Run Code Online (Sandbox Code Playgroud)
我不能做这样的事情
finally
{
if (db != null)
{
((IDisposable)db).Dispose();
}
}
Run Code Online (Sandbox Code Playgroud)
那么...如何避免连接泄漏?
谢谢。
您可以将代码放入“ using”块中。这样可以确保连接在完成后关闭。
using Microsoft.Practices.EnterpriseLibrary.Data.Sql;
SqlDatabase db = new SqlDatabase(stringConnection);
using (DbConnection con = db.CreateConnection())
{
db.ExecuteNonQuery("storedprocedure", someParams);
}
Run Code Online (Sandbox Code Playgroud)
或者您可以使用con.Close()。
通常您无需担心关闭连接,因为数据访问块可以更有效地管理连接。检查以下链接中的“管理连接”部分:http : //msdn.microsoft.com/en-us/library/ff953187(v=pandp.50).aspx
| 归档时间: |
|
| 查看次数: |
9841 次 |
| 最近记录: |