0

我正在从 C# 应用程序查询。我可以做这个:

MySqlConnection conn = new MySqlConnection(conString);
conn.Open();
//do database operation

现在如何获取conn对象的连接状态?奇怪的是,我得到了显示对象State属性的智能感知下拉列表,MySqlConnection并自动引导我进入ConnectionState我可以选择的枚举。我可以编写以下代码:

if (conn.State == ConnectionState.Open)
    //print "Open"

但是当我仔细检查时,我明白ConnectionState枚举是类型System.Data!当我将它与MySqlConnection对象等同时,如何自动获得它?

另外,我如何获得 MySQL 连接的连接状态,如下所示:

if (conn.State == //equal to what?
4

1 回答 1

4

MySqlConnection派生自DBConnection它是一个抽象类,它定义了所有数据库连接的行为方式(派生自DBConnection)。因此,所有这些连接都会暴露ConnectionStateSystem.Data.Common命名空间中。所以这是有效的:

if (conn.State == ConnectionState.Open)
于 2011-08-21T14:49:13.620 回答