【发布时间】:2015-01-07 06:23:12
【问题描述】:
我有这样的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
怎么了?
【问题讨论】: