[英]MySQL Connection using IDisposable C#
我正在使用ASP.net开发MySQL Web App,并且听说mysql连接应使用using指令,以确保在出现问题时始终关闭连接,因为它们不能保证数据库将从内部关闭最终声明是否已发生捕获(取决于异常)。
我正在尝试创建一个打开MySQL连接的类,因此不必每次访问数据库时都重复相同的代码。
我已经看到它就像
using (call class to open connection)
{
MySQL Stuff Here
}
我已经看到,被用来打开连接的类必须是IDISOSABLe类,但我不确定如何实现此类。 但是,我找不到有关如何完成此操作的任何信息。 谢谢你的帮助。
实现IDisposable
接口的典型方法是遵循文档中示例中列出的模式: http : //msdn.microsoft.com/zh-cn/library/system.idisposable.aspx
基本上,您的班级应该/将看起来像这样:
public sealed class YourClass : IDisposable
{
private MySqlConnection _Connection;
private bool _IsDisposed;
public YourClass()
{
_Connection = new MySqlConnection();
}
public void Dispose()
{
if (!_IsDisposed)
{
_Connection.Dispose(); // or Close
_IsDisposed = false;
}
}
}
此模式有多种变体,取决于您是否打算让其他人从您的类继承,以及是否需要关闭任何非托管资源(如文件句柄),但是对于正常使用而言,以上足够了。
MSDN :)
http://msdn.microsoft.com/en-us/library/system.idisposable.dispose.aspx#Y800
但是,我不确定自己要实现的目标会对您有什么好处。 包装器类与仅使用连接对象有何不同?
您正在使用哪种数据访问设计模式?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.