Request.QueryString与Request的区别

Request.QueryString["id"] 只能读取通过地址栏参数传递过来的名为id的参数。
Request["id"]是一个复合功能读取函数。
它的优先级顺序为
QueryString > Form > Cookies > ServerVariables

也就是说,如果存在名为id的地址栏参数,Request[ "id" ] 的效果和 Request.QueryString["id"] 是样的。
如果不存在名为id的地址栏参数,Request.QueryString["id"]将会返回空,但是Request[ "id" ]会继续检查是否存在名为id的表单提交元素,如果不存在,则继续尝试检查名为id的Cookie,如果不存在,继续检查名为id的服务器环境变量。它将最多做出4个尝试,只有四个尝试都失败,才返回空。

以下是Request[ "id" ]的内部实现代码:
public string this[string key]
    {
        get
        {
            string str = this.QueryString[key];
            if (str != null)
            {
                return str;
            }
            str = this.Form[key];
            if (str != null)
            {
                return str;
            }
            HttpCookie cookie = this.Cookies[key];
            if (cookie != null)
            {
                return cookie.Value;
            }
            str = this.ServerVariables[key];
            if (str != null)
            {
                return str;
            }
            return null;
        }
    }

Request.QueryString与Request的区别

时间: 2024-10-13 19:34:24

Request.QueryString与Request的区别的相关文章

asp.net中Request.QueryString与Request.Param的区别分析

看起来Request.Params更好一些,但是既然Param包括了所有,为什么还要有QueryString呢?? request.params其实是一个集合,它依次包括request.querystring.request.form.request.cookies和request.servervariables. 如果要在两个页面传递数据的话,只能用request.querystring.request.form.request.cookies Request.Params 是在 QueryS

Request[" "]、Request.Form[" "]、Request.QueryString[" "] 的使用及区别

一.前言 在一般处理程序里面,为了获取Ajax提交的数据时我们需要用到Request对象.请求方式的不同,获取的方式也有所区别. 二.介绍 1.Request.Form[" "] 这种方式是获取post请求的数据 2.Request.QueryString[" "]  这种方式是获取get请求的数据 3.Request[" "] post与get请求方式都能够获取

request.querystring和request.form、session的区别

1. request.querystring是用来接收地址里面问号“?”后面的参数的内容,  用get方法读取的 不安全   request.form是用来接收表单递交来的数据 ,是用post方法读取的form表单中的method中看你是get还是post ,一般form中都用post. session是在一个会话的整个过程中保存数据,知道浏览器关闭数据消失定义session["Name"]=李四形式 2.request对象有五个集合,下面予以介绍: QueryString:用以获取客

request和request.form和request.querystring的区别

Request.Form是获取以POST方式提交的表单数据: Request.QueryString主要是获取地址栏参数或者以Get方式提交的数据 而Request则包含以上两种方式,会在Request.QueryString和Request.Form中都查询一遍变量.但是优先获取GET方式提交的数据,即Request.QueryString Request:包含以上两种方式(优先获取GET方式提交的数据),它会在QueryString.Form.ServerVariable中都搜寻一遍. 而且

Request,Request.QueryString,Request.Params,Request.Form,Request.ServerVariables之间的区别

常见的aspx页面传值方式 1.get方式 发送页面:<a href="RequestPage.aspx?name=value"></a> 接收页面:Request["name"],Request.QueryString["name"],Request.Params["name"] 2.post方式 发送页面: <form mathod="post" action="

Request.params,Request.form,Request.querystring区别(转)

自己总结:---大致意思是: 1.传参的方式分为:get方式传参,post方式传参,request.cookies和request.servervariables 2.这几种获取参数方式获取的都是一个集合 1)Request.QueryString[id] 只获取get方式传递的参数 2)Request.Form["id"] 只获取post方式传递的参数 3)Request.Params["id"] 获取以上四种传参方式的参数,依次在 QueryString.For

Request.Form和Request和Request.querystring的区别

Request.Form是获取以POST方式提交的表单数据: Request.QueryString主要是获取地址栏参数或者以Get方式提交的数据 而Request则包含以上两种方式,会在Request.QueryString和Request.Form中都查询一遍变量.但是优先获取GET方式提交的数据,即Request.QueryString Request:包含以上两种方式(优先获取GET方式提交的数据),它会在QueryString.Form.ServerVariable中都搜寻一遍. 而且

Rquest Request[&quot;&quot;];Request.Form[&quot;&quot;];Request.QueryString[&quot;&quot;]

<1> HTMLPage.htm页面  [请求页] <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> </head> <body> <!--如果不指定method属性,那么method的默认值就是get--> <form action="Handler.ashx" method=&q

asp.net Request、Request.Form、Request.QueryString的区别(转)

Request.Form:获取以POST方式提交的数据. Request.QueryString:获取地址栏参数(以GET方式提交的数据). Request:包含以上两种方式(优先获取GET方式提交的数据),它会在QueryString.Form.ServerVariable中都搜寻一遍. 有时候会得到不同的结果.如果仅仅需要Form中的数据,但是使用了Request而不是Request.Form,那么程序将在QueryString.ServerVariable中也搜寻一遍.如果其中有同名的项,