将参数值从 String 转换到 Int32 失败。

protectedvoidGridView1_RowDeleting(objectsender,GridViewDeleteEventArgse){SqlConnecti... protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
SqlConnection scon = new SqlConnection("server=.;uid=sa;pwd=;database=playing");
//实现行的删除过程
if (GridView1.Rows.Count < 1)
{
e.Cancel = true;
this.lbl_Message.Text = "你必须保留最后一条记录,以后才能构浏览和更改!";
}
else
{
//实现删除操作的具体过程
//并实实现对删除操作过程的异常处理
string StrSql = "delete from UserInfo where ID=@ID";
SqlCommand scm = new SqlCommand(StrSql,scon);
scm.Parameters.Add(new SqlParameter("@ID", SqlDbType.Int, 4));
scm.Parameters["@ID"].Value =GridView1.DataKeys.ToString();//DataKeys[(int)e.Item.ItemIndex];
scm.Connection.Open();
try
{
scm.ExecuteNonQuery();
lbl_Message.Text = "删除成功!";
}
catch (SqlException)
{
lbl_Message.Text = "删除失败!";
lbl_Message.Style["color"] = "red";
}
scm.Connection.Close();
BindToGiridView();
}
}
这是我写的一段程序实现在GridView中删除功能但是就是在运行时出现错误,错误信息如下:将参数值从 String 转换到 Int32 失败。
各位请帮忙解决一下!
展开
 我来答
kanerry
2006-09-23 · TA获得超过869个赞
知道大有可为答主
回答量:3998
采纳率:0%
帮助的人:2541万
展开全部
你这么写一下试试看
scm.Parameters["@ID"].Value =Convert.ToInt32(GridView1.DataKeys.ToString());
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式