一段时间以来,我一直在尝试RETURN
从我的存储过程中读取值,但没有成功,在我之前的帖子中有人指出我应该使用OUTPUT
并且有人提供了一些代码来说明我将如何做到这一点,因为我以前没有使用OUTPUT
过。
我现在正在尝试将OUTPUT
值添加到我的 C# 代码中。
如果投票不存在则返回 0
如果投票存在则返回 1
该代码当前抛出错误:
System.Data.SqlClient.SqlException:过程或函数“Votes”需要参数“@votecount”,但未提供
我在这里和谷歌上查看了很多帖子,但没有找到我的答案,所以希望这里的人可以帮助我解决我要去的地方
我的C#
command = new SqlCommand($@"EXECUTE dbo.Votes @VotedMember = @@VotedMember,
@VotedBy = @@VotedBy",
StaticObjects._connection);
if (Context.Guild.Users.Where(x => x.Username.ToLower() == member.ToLower() ||
x.Nickname?.ToLower() == member.ToLower()).Count() > 0)
{
SqlParameter GOTWParam = new SqlParameter
{
ParameterName = "@@VotedMember",
Value = //code here
}
command.Parameters.Add(GOTWParam);
SqlParameter VotedByParam = new SqlParameter
{
ParameterName = "@@VotedBy",
Value = //code here
};
command.Parameters.Add(VotedByParam);
command.Parameters.Add("@votecount", SqlDbType.Int).Direction = ParameterDirection.Output;
command.ExecuteNonQuery();
int response = Convert.ToInt32(command.Parameters["@votecount"].Value);
switch (response)
{
case 0:
// do something
case 1:
// do something
}
}
莫回无