首页 > Web开发 > 详细

net 判断URL 参数是否存在

时间:2016-01-22 10:24:15      阅读:184      评论:0      收藏:0      [点我收藏+]

ASP.NET中,若要将一个URL参数值赋值给一个变量,都得先判断参数是否存在,否则等待你的很可能就是"未将对象引用设置到对象的实例",以前都是 Request.QueryString["xx"] != null比较后再赋值,但今天在一个项目中发现竟还报错,代码大致结构如下:

int id = 0;
if (Request.QueryString["id"] != null)
    id = int.Parse(Request.QueryString["id"]);


后来发现URL为:http://www.mzwu.com/?id=,原因是Request.QueryString["id"]的值为一个空字符串,所以通过了Request.QueryString["id"] != null的验证,但将空字符串传给int.Parse方法,还是报错了,可见,光判断参数是否存在还是不够的,还必须得进一步判断是否有传值才行,最终代码改为:

int id = 0;
if (!string.IsNullOrEmpty(Request.QueryString["id"]))
    id = int.Parse(Request.QueryString["id"]);


原因是:当参数不存在时,参数值为null,调用string.IsNullOrEmpty方法,null会自动转换为空字符串;当参数存在但不传值时,参数值为空字符串,string.IsNullOrEmpty很容易就判断出来了!

net 判断URL 参数是否存在

原文:http://www.cnblogs.com/spring2007/p/5150177.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!