使用GenericDatabase的连接不支持参数发现。

时间:2017-05-10 06:28:10

标签: enterprise-library-5 dbconnection dbproviderfactories data-access-app-block

我一直在尝试创建自己的DbProvider并使用EnterpriseLibrary对其进行配置,但我正在通过以下问题进行操作

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

我有创建的连接类,它实现了DbConnection和其他类,比如暗示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并命令我遇到问题时我提到了

1 个答案:

答案 0 :(得分:0)

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

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

而应该是

db.ExecuteReader(CommandType.Text,"Select * from employees");