asp.net Get和Post传参和接收参数

asp.net Get和Post传参和接收参数

Get请求:

对于传参:test.aspx?name=%e5%bc%a0%e4%b8%89

接收参数的方法:

Request.QueryString[“name”]

HttpContext.Current.Request[“name”]

两者接收到的参数均为”张三”

两者在接收参数的时候进行了解码操作:HttpUtility.UrlDecode

Post请求:

接收参数的方法:

Request.Form["name"]

HttpContext.Current.Request[“name”]

两者在接收参数的时候默认进行了解码操作:HttpUtility.UrlDecode

如果想要传特殊字符,比如+,&等,需要编码操作:HttpUtility.UrlEncode

例如:需要将a+b&c正确的传输

string name=string.Format(“name={0}”,HttpUtility.UrlEncode(“a+b&c”));

...

Request.QueryString[“name”]

Request.Form["name"]

HttpContext.Current.Request[“name”]

这些在接收参数时会默认进行解码操作。