asp.net编程中,经常要传递参数,获取参数;
以get形式传参为例,获取参数时,要这样写
int id;
if (Request.QueryString["id"] != null)
{
id = Convert.ToInt16(Request.QueryString["id"].Trim());
}
首先判断该参数是否存,然后获取并转为数值型。其实,即便如此,上面的代码也是不够安全的,例如,id等于空,或是非数字字符,都会出错的。
要写一个完整的参数获取代码,真是挺烦的,而且这种代码,会经常的用到。于是决定写一个东西专门处理它。
两个类:Extend.Request用来获取参数,Parameter用来处理参数(后面会提供代码)。代码很简单,但还算实用
实现前面的效果,用如下代码即可:
int id = Extend.Request.QueryString["id"].Int16 ?? 0;
获取id参数后,后面缀上Int16,就转为int型了,如果参数不存在,或异常,会返回空;?? 的意思是,如果为空,就返回后面的0(即你自己设定的默认值);
当然,这个Extend.Request,不止可以获取QueryString参数,还要获取如下几种形式的参数:
1、Cookies (例如:Extend.Request.Cookie ["id"].Int16)
2、Session
3、Form
4、QueryString
5、TextBox (例如:Extend.Request.TextBox[tbPw].MD5)
当然Parameter,也不止提供将参数转为Int型的方法,还提供如下几种转换:
String
Boolean
DateTime
Double
Int16
Int32
Int64
MD5(返回参数md5加密后的字符串)
UrlDecode(返回参数URL解码后的字符串)
HtmlDecode(返回参数HTML解码后的字符串)
代码点儿长,一篇文章提交不完,再续两篇吧。下面是代码