使用 GenericDatabase 的连接不支持参数发现。
Parameter discovery is not supported for connections using GenericDatabase.
我一直在尝试创建我自己的 DbProvider 并使用 EnterpriseLibrary 对其进行配置,但我运行 解决了以下问题
使用 GenericDatabase 的连接不支持参数发现。您必须明确指定参数,或者将连接配置为使用从支持参数发现的数据库派生的类型。
我创建了连接 class,它实现了 DbConnection 和其他 classes,例如 classes,它实现了 DbCommand 等
我已经覆盖了 DbConnection class 和我不知道实现的方法我抛出了未实现的异常
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 时,我遇到了我提到的问题
我已经解决了这个问题,
在使用通用数据库对象时,我是这样使用的
db.ExecuteReader("Select * from employees");
应该是
db.ExecuteReader(CommandType.Text,"Select * from employees");
我一直在尝试创建我自己的 DbProvider 并使用 EnterpriseLibrary 对其进行配置,但我运行 解决了以下问题
使用 GenericDatabase 的连接不支持参数发现。您必须明确指定参数,或者将连接配置为使用从支持参数发现的数据库派生的类型。
我创建了连接 class,它实现了 DbConnection 和其他 classes,例如 classes,它实现了 DbCommand 等
我已经覆盖了 DbConnection class 和我不知道实现的方法我抛出了未实现的异常
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 时,我遇到了我提到的问题
我已经解决了这个问题, 在使用通用数据库对象时,我是这样使用的
db.ExecuteReader("Select * from employees");
应该是
db.ExecuteReader(CommandType.Text,"Select * from employees");