我对已发布存储过程进行访问的现有SQL Server数据库使用OrmLite。其中一个SP需要3个int参数,但期望其中一个会为空。但是,没有任何参数被声明为可选。如何使用OrmLite将非可选的NULL参数传递到存储过程
这里是我试过的代码:
using (IDbConnection scon = myFactory.OpenDbConnection())
{
rowCount = scon.SqlScalar<int>("EXEC myProc @FileID, @FileTypeID, @POID",
new
{
FileID = req.FileId,
FileTypeID = (int?)null,
POID = req.PoId,
});
}
但这产生的SQLException:必须声明标量变量“@FileTypeID”。在封面下检查SQLParameterCollection显示只有两个参数由OrmLite生成。
是否可以使用空参数调用此SP?
我也试过使用DBNull.Value作为参数,没有运气。 – AndrewCr