我正在写一个登录脚本。但是当我想检查用户是否已经存在错误时:
附加信息:过程或函数'checkIfUserExcist'需要参数'@username',这是未提供的。
会出现。
当我用一个参数执行存储过程时,它将成功。播下我的代码有问题,但我找不到错误。
这是存储过程:
@username varchar(50)
as
begin
SELECT count(*)
FROM lars.userAcces
WHERE username = @username
end
这是我的C#代码:
public static bool checkIfUserExists(string username)
{
int temp=0;
SqlConnection conn = SqlConn.openSqlConnection();
conn.Open();
SqlCommand com = new SqlCommand("checkIfUserExists", conn);
com.Parameters.AddWithValue("@username", username);
temp = Convert.ToInt32(com.ExecuteScalar().ToString());
conn.Close();
if (temp == 1)
{
return true;
}
else
{
return false;
}
}
答案 0 :(得分:6)
您需要告诉您的SqlCommand
它使用存储过程 - 如下所示:
SqlCommand com = new SqlCommand("checkIfUserExcist", conn);
-- add this line here
com.CommandType = CommandType.StoredProcedure;
com.Parameters.AddWithValue("@username", username);