不错呦!smile@林凯西,确保“准备文件”中的几个文件都有安装,S...您好,看了您这篇帖子觉得很有帮助。但是有个问题想请...我的修改过了怎么还被恶意注册呢 @jjjjiiii 用PJ快9年了,主要是A...PJ3啊,貌似很少有人用PJ了,现在不是WP就是z...@332347365,我当时接入时错误码没有-10...楼主,ChkValue值应为-103是什么意思呢?...大哥 你最近能看到我发的信息,请跟我联系,我有个制...
再说ASP.NET判断URL参数是否存在
编辑:dnawo 日期:2009-11-30
在ASP.NET中,若要将一个URL参数值赋值给一个变量,都得先判断参数是否存在,否则等待你的很可能就是"未将对象引用设置到对象的实例",以前都是Request.QueryString["xx"] != null比较后再赋值,但今天在一个项目中发现竟还报错,代码大致结构如下:
后来发现URL为:http://www.mzwu.com/?id=,原因是Request.QueryString["id"]的值为一个空字符串,所以通过了Request.QueryString["id"] != null的验证,但将空字符串传给int.Parse方法,还是报错了,可见,光判断参数是否存在还是不够的,还必须得进一步判断是否有传值才行,最终代码改为:
原因是:当参数不存在时,参数值为null,调用string.IsNullOrEmpty方法,null会自动转换为空字符串;当参数存在但不传值时,参数值为空字符串,string.IsNullOrEmpty很容易就判断出来了!
复制内容到剪贴板
程序代码

int id = 0;
if (Request.QueryString["id"] != null)
id = int.Parse(Request.QueryString["id"]);
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"]);
if (!string.IsNullOrEmpty(Request.QueryString["id"]))
id = int.Parse(Request.QueryString["id"]);
原因是:当参数不存在时,参数值为null,调用string.IsNullOrEmpty方法,null会自动转换为空字符串;当参数存在但不传值时,参数值为空字符串,string.IsNullOrEmpty很容易就判断出来了!
评论: 0 | 引用: 0 | 查看次数: 8600
发表评论
请登录后再发表评论!