C# Can';我的更新无法正常工作

C# Can';我的更新无法正常工作,c#,asp.net,sql,C#,Asp.net,Sql,我正在使用一个存储过程来更新列中的行,其中寄售编号=@CommissionNumber 下面是代码的屏幕。 我想我错过了什么,但我不能确定我真的错过了什么,有人能帮忙吗 protected void BtnReceived_Click(object sender, EventArgs e) { IncrementStatusOfConsignment(sender); } private static void IncrementStatusOfConsignment(object s

我正在使用一个存储过程来更新列中的行,其中寄售编号=@CommissionNumber

下面是代码的屏幕。 我想我错过了什么,但我不能确定我真的错过了什么,有人能帮忙吗

protected void BtnReceived_Click(object sender, EventArgs e)
{
    IncrementStatusOfConsignment(sender);
}

private static void IncrementStatusOfConsignment(object sender)
{
    var button = (Button) sender;
    var gridviewrow = (GridViewRow) button.Parent.Parent;
    var consignmentnumber = gridviewrow.Cells[3].Text;

    using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["Test"].ConnectionString))
    {
        con.Open();
        using (var cmd = new SqlCommand("Test", con))
        {
            cmd.CommandType = CommandType.StoredProcedure;
            var sqlparam = cmd.Parameters.Add("@consignmentnumber", SqlDbType.VarChar);
            sqlparam.Value = consignmentnumber;
            cmd.ExecuteNonQuery();
        }
    }
}
有人能告诉我哪里出了错或者我错过了什么吗

我经常会犯这样的错误:


如果我将参数设置为Int,它仍然不起作用。

如果您已将列
委托编号
声明为数字(18,0),则

或类似的内容:

var sqlparam = cmd.Parameters.Add("@consignmentnumber", SqlDbType.NVarChar, 18);
sqlparam.Value = consignmentnumber;

您确定您的
委托编号已定义为存储过程中的字符吗?闻起来您在sp中定义为整数类型。我无法在提供的链接中查看图像。您可以粘贴到问题中的错误是什么。正如soner所说,您的参数类型可能错误,
CommissionNumber
的值是多少?您不应该将其转换为整数吗?。还有,你在更新什么?我看不到任何值被传递到SP。存储过程中的
@commitmentnumber
数据类型是什么?@dasariramacharanprasa我已经编辑了问题以包含嵌入图像,OP包含了web链接而不是源图像URL。谢谢大家。但是@Soner_Gonur,结果是我在程序中出错了:D谢谢——
var sqlparam = cmd.Parameters.Add("@consignmentnumber", SqlDbType.NVarChar, 18);
sqlparam.Value = consignmentnumber;