如何将ref字符串传递给我的方法?

时间:2012-01-09 19:41:19

标签: c#

我在SQL Server中有以下存储过程的小部件

    Create PROCEDURE [dbo].[usp_Genpwd] 
    @pass varchar(8) OUTPUT
    AS
    BEGIN

在我的c#代码中,如何从数据上下文中获取存储过程的输出?

    var pwd = db.usp_Genpwd(..)

Intellisense表示将ref string传递给paranthesis但是当我执行以下操作时:

    var pwd = db.usp_Genpwd(ref string pass);

我收到无效的参数错误

当我从存储过程中输出一个值时,我不确定副词是什么。

2 个答案:

答案 0 :(得分:1)

ref parameter表示对变量或字段的引用。

要调用带有ref参数的函数,您需要使用ref关键字传递变量或字段:

string v = null;
var pwd = db.usp_Genpwd(ref v);

答案 1 :(得分:0)

您应该执行以下操作:

ObjectParameter pass = new ObjectParameter("pass", typeof(String));
db.usp_Genpwd(pass);

pass.Value将包含结果。