C# ExecuteScalar()---输入字符串错误

C# ExecuteScalar()---输入字符串错误,c#,asp.net,C#,Asp.net,我正在为一个在线讨论论坛工作,在创建了一个论坛之后,我想让用户写文章,这就是我所得到的一切 输入字符串的格式不正确 描述:在执行过程中发生未处理的异常 当前的web请求。请查看堆栈跟踪以了解更多信息 有关错误的信息及其在代码中的来源 异常详细信息:System.FormatException:输入字符串不在 格式正确 源错误: 第43行:cmd.Parameters。Add@MessageID, System.Data.SqlDbType.Int,10,MessageID;第44行: cmd.P

我正在为一个在线讨论论坛工作,在创建了一个论坛之后,我想让用户写文章,这就是我所得到的一切

输入字符串的格式不正确

描述:在执行过程中发生未处理的异常 当前的web请求。请查看堆栈跟踪以了解更多信息 有关错误的信息及其在代码中的来源

异常详细信息:System.FormatException:输入字符串不在 格式正确

源错误:

第43行:cmd.Parameters。Add@MessageID, System.Data.SqlDbType.Int,10,MessageID;第44行: cmd.Parameters[@MessageID].Value=e.Row.Cells[0].Text;第45行: 字符串计数=cmd.ExecuteScalar.ToString

源文件:c:\Users\A\Documents\Visual Studio 2010\WebSites\ODF\Default2.aspx.cs行:45

这是我在cs文件中的代码

    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        SqlConnection CN = new SqlConnection("Data Source=.\\;Initial Catalog=ODF;Integrated Security=True");
        CN.Open();
        SqlCommand cmd = new SqlCommand("SELECT COUNT(*) FROM [Comments] WHERE [MessageID] = @MessageID", CN);
        cmd.Parameters.Add("@MessageID", System.Data.SqlDbType.Int, 10, "MessageID");
        cmd.Parameters["@MessageID"].Value = e.Row.Cells[0].Text;
        string count = (cmd.ExecuteScalar().ToString());
        e.Row.Cells[4].Text = count;
        //for column2 postedby

        CN.Close();
    }
请帮助更改此项:

cmd.Parameters.Add("@MessageID", System.Data.SqlDbType.Int, 10, "MessageID");
cmd.Parameters["@MessageID"].Value = e.Row.Cells[0].Text;
为此:

cmd.Parameters.Add("@MessageID", System.Data.SqlDbType.Int).Value = e.Row.Cells[0].Text;

添加调试器并检查e.Row.Cells[0]的值。text请帮助我,我是应用程序的新手,如何添加调试器?可能是“Ok read it”的重复项,让我试试iy,我仍然有大量错误。你可以看看系统,告诉我如何更改或改进它吗??