问题描述
- 请问一下这个代码有什么错误?
-
protected void Button1_Click(object sender, EventArgs e)
{
string sql;
//出错的是这句try { sql = "update book set rebody='0001fortest' where id=" + Convert.ToInt16(Request.QueryString["id"].ToString().Trim()); //sql = "update book set rebody='" + TextBox1.Text.ToString().Trim() + "' where id=" + Request.QueryString["id"].ToString().Trim(); object result; result = new Class1().hsgexucute(sql); if (result.GetType() == typeof(int)) { Response.Write("<script>javascript:alert('回复成功');location.href='lygl.aspx';</script>"); } else { TextBox1.Text = Request.QueryString["id"].ToString().Trim(); Response.Write("<script>javascript:alert(' 报错信息:" + result.ToString() + "');</script>"); } } catch (Exception) { throw; } }
}
解决方案
报空引用了吧,明显 Request.QueryString["id"] 可能为空导致的
看看你的URL里有没有id这个参数
解决方案二:
最有可能的原因是querysting中没有传来id,或者传来的是空的,检查下。
所谓querystring,就是链接中?后面那些字符串,其中有没有 &id=... 的部分,它是否是一个有效的数字(并且是short)
解决方案三:
你先看是什么错误提示,如果是null错误,估计就是Request.QueryString["id"]没有取到值
解决方案四:
亲啊,调试一下看看到底什么错,贴一下~~
时间: 2024-10-31 01:36:55