【发布时间】:2018-08-04 00:26:40
【问题描述】:
当我使用 Microsoft.Practices.EnterpriseLibrary.Data.Database 和 ExecuteScalar 方法时,我没有找到关闭连接或 Dispose 的正确方法。 我不能使用 using 块,因为对象没有实现 IDisposable。如果我使用 finally 块,我还没有弄清楚如何处理。我是否需要这样做,或者我的第一个 using 块将 Dispose/Close ExecuteScalar 上的连接?
这是我的代码:
DatabaseProviderFactory factory = new DatabaseProviderFactory();
DatabaseFactory.SetDatabaseProviderFactory(factory, false);
Database db = ... ;
// Initialize command
using (DbCommand dbCommand = db.GetStoredProcCommand("XXXXXX"))
{
object r;
// Execute command
using (r = (object)db.ExecuteScalar(dbCommand)) //Getting error here
{
//Other code here
}
}
【问题讨论】:
标签: c# enterprise-library