为了账号安全,请及时绑定邮箱和手机立即绑定

使用int id却提示出错?该怎么解决呢?具体看下面情况

使用int id却提示出错?该怎么解决呢?具体看下面情况

喵喵时光机 2021-07-15 18:14:41
int id = Convert.ToInt32(Request.QueryString["id"]);提示出错,怎么解决啊
查看完整描述

2 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

首先,你的错误提示和你传的代码不匹配。错误提示是字符串转时间类型出错,而代码里面是querystring中的参数转化成int32。
其次,querystring当中的参数在使用前要先判断这个参数是否存在,即:
if(Request.QueryString["id"]!=null)
最后,获取参数后要转换成字符串并去除可能有的后置空格,如下
int id = Convert.ToInt32(Request.QueryString["id"].tostring().trim());

查看完整回答
反对 回复 2021-07-25
?
ibeautiful

TA贡献1993条经验 获得超5个赞

Convert.ToInt32()只负责把"12345"或者"5678"这样的字符串转换为整数,而"1ar3243"或者"2013-0306"这样的不符合数字规则的在转换的时候就会出现错误。

所以要加入错误捕捉


int id=-1;try{    id = Convert.ToInt32(Request.QueryString["id"]);}catch{} if(id > -1){    //....在这里加入正常执行的代码}else{    //错误提示:比如ID错误}



查看完整回答
反对 回复 2021-07-25
  • 2 回答
  • 0 关注
  • 327 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信