BLToolkit:无法使 DataAccessor 中的 ScalarSource 工作



我有类似的SP

CREATE PROCEDURE dbo.pPersonGetIDByName
@Name nvarchar(50),
@ID int output
AS ...

和适当的DataAccessor方法

[ScalarSource(ScalarSourceType.OutputParameter)]
abstract int GetIDByName(string Name);

我将其理解为"调用存储过程,传递Name参数,并作为结果返回第一个输出参数"。但是这个调用

id = pa.GetIDByName("testname");

返回错误

过程或函数"pPersonGetIDByName"需要参数"@ID",但未提供该参数。

据我在示例(OutputParameterTest())中看到的,它应该是可以的。SQL Server调用是正确的:

declare @p2 int
set @p2=default
exec pPersonGetIDByName @Name=N'testname',@ID=@p2 output
select @p2

怎么了?

您是否尝试过传递参数名称:

[ScalarSource(ScalarSourceType.OutputParameter, "ID")]
abstract int GetIDByName(string Name);

相关内容

  • 没有找到相关文章

最新更新