0

我一直在尝试创建自己的 DbProvider 并使用 EnterpriseLibrary 对其进行配置,但我遇到了以下问题

使用 GenericDatabase 的连接不支持参数发现。您必须明确指定参数,或将连接配置为使用派生自支持参数发现的数据库的类型。

我创建了实现 DbConnection 的 Connection 类和其他类,如实现 DbCommand 等的类

我已经覆盖了 DbConnection 类和我不知道实现的方法我已经抛出了未实现的异常,例如

public override string Database
        {
            get
            {
                throw new NotImpelmentedException();
            }
        }

我创建了如下的企业库连接

public Database GetConnection()
        {
    CustomDbProviderFactory obj = new CustomDbProviderFactory();
                    GenericDatabase db = new GenericDatabase("server=****;Request Timeout=3000000;", obj);
                    return db;
}

但是当我使用连接字符串和命令执行 DataReader 时,我遇到了我提到的问题

4

1 回答 1

0

我已经解决了这个问题,在使用通用数据库对象时,我是这样使用的

db.ExecuteReader("Select * from employees");

相反,它应该是

db.ExecuteReader(CommandType.Text,"Select * from employees");
于 2017-05-14T05:24:38.973 回答