首页 > 开发 > 综合 > 正文

在C#中用最简洁有效的代码执行存储过程并返回数据

2024-07-21 02:18:00
字体:
来源:转载
供稿:网友
存储过程 p_sys_login 定义如下:

create procedure p_sys_login

@arguserid varchar(20), --用户名

@argpassword varchar(20), --密码

@argresult varchar(50) output --登录结果

as

/*

... ...

*/



下面演示如何在c#中用最简洁有效的代码执行该存储过程并返回数据:



/// <summary>

/// 用户登录验证

/// </summary>

/// <param name="userid">用户名</param>

/// <param name="password">密码</param>

public void login(string userid, string password)

{

//数据库连接字符串存储在 web.config 中

string cnnstring = configurationsettings.appsettings["connectionstring"];

sqlconnection cnn = new sqlconnection(cnnstring);


//


string sql = string.format("exec p_sys_login '{0}', '{1}', @result output",

userid, password);

sqlcommand cmd = new sqlcommand(sql, cnn);



//建立并添加和“@result output”对应的参数

sqlparameter paramresult = new sqlparameter("@result", sqldbtype.varchar, 50);

paramresult.direction = parameterdirection.output;

cmd.parameters.add(paramresult);



cnn.open();

cmd.executenonquery();

cnn.close();



//获取存储过程返回的结果

string result = paramresult.value.tostring();



//... ...

}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表