日期:2014-05-19  浏览次数:20413 次

URL参数传递问题的另类问题,很简单的!
有个关于参数传递的问题,有一个a.aspx页面,其通过其他页面将参数传递给a.aspx?id=123,我知道用request接收,但我现在想直接在浏览器中输入a.aspx(不加参数),则会报错,请问如何编写才能使得在没有参数传递的情况下显示一个特定的模板页!

------解决方案--------------------
在读取查询字符串的时候判断查询字符串是否为空,如果为空则不处理。

//读取查询字符串,判断是否为空,如果为空则不处理
if(Request.QueryString[ "Id "] != null)
{
//如果不为空,则进行后续处理
}

当然你传的查询字符串如果是整数(比如id=123),你在后续处理中还需要验证是否是整数,并且还可以检测整数的取值范围,这样就可以防止傻瓜用户(或者恶意用户)输入无效数据导致程序出错的可能。
------解决方案--------------------
同意 楼上