我在EnterpriseLibrary.Data.Database名称空间中使用名为
的方法public virtual object ExecuteScalar(DbCommand command)
我想使用此方法执行标量值函数。但是我不确定如何创建DbCommand。
有人可以告诉我如何创建它,因为它不会让我实例化它。
谢谢!
答案 0 :(得分:4)
他们正在使用工厂模式(使用企业库数据访问应用程序块的主要好处之一)。需要在app.config(或web.config)中正确配置数据库。您可以看到here的示例。
以下是创建命令的示例:
Database db = DatabaseFactory.CreateDatabase();
DbCommand command = db.GetSqlStringCommand("SELECT Name FROM Customers");
...
(记得要处理。)
答案 1 :(得分:3)
您无法实例化DbCommand,因为它是一个抽象基类。
您必须改为创建具体子类的实例。您可以根据与之交谈的数据库类型来选择子类。
例如,如果您正在与SQL Server交谈,则应创建SQLCommand的实例。
SqlConnection connection = new SqlConnection(connectionString);
DbCommand command = new System.Data.SqlClient.SqlCommand(commandText, connection);