Asp.net 数据库工厂和输出参数
我已开始使用企业库,并有以下问题: 1) 如何将输出参数添加到此查询以及如何将其取回:Asp.net 数据库工厂和输出参数,asp.net,enterprise-library,Asp.net,Enterprise Library,我已开始使用企业库,并有以下问题: 1) 如何将输出参数添加到此查询以及如何将其取回: public int InsertDoc(HDocument document) { Database db = DatabaseFactory.CreateDatabase(); int result; var reader = db.ExecuteNonQuery("sp_InsertDocument", document.
public int InsertDoc(HDocument document)
{
Database db = DatabaseFactory.CreateDatabase();
int result;
var reader = db.ExecuteNonQuery("sp_InsertDocument",
document.AddedDate,document.AddedBy, document.Title))
.
.
.
}
AddOutParameter需要Paremeters,而我没有类似于DbCommand的Paremeters
2) 我有一些处理数据库(我从ADO.net传输)存储过程的方法,
我是否必须声明:Database db=DatabaseFactory.CreateDatabase();在它们中的每一个中,或者我可以重复使用它?1)-您可以这样创建一个DbCommand:
DbCommand dbCommand = db.GetSqlStringCommand("sp_InsertDocument");
并在执行后使用以下命令检索输出参数:
db.GetParameterValue(dbCommand, "outputParameterName");
下面是一个使用EntLib执行带有输出参数的存储过程的好例子:
2) -可以在每个方法中使用DatabaseFactory.CreateDatabase(),这很好。EntLib将根据需要管理连接。
另外,如果在方法中只使用一次db变量,则可以使用内联临时变量而不是声明变量来稍微简化代码,即:
var reader = DatabaseFactory.CreateDatabase().ExecuteNonQuery(....