如果通过请求做一个简单的索引要求的项目[关键],它会在4个地点 。 什么是订单? 有人提出在“饼干,ServerVariables,窗体和查询字符串”该网页上的一个猜测。 有人有确切消息么? 文件将是一个奖金:)
Answer 1:
公共字符串此[字符串键{获得; }
声明类型:System.Web.HttpRequest集:System.Web,版本= 2.0.0.0
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;
}
}
Answer 2:
只要使用反射 ,你可以看到它自己。 顺序是查询字符串,形式,饼干,然后ServerVariables。
Answer 3:
这是从ASP网站 ,但它仍然适用于ASP.NET:
所有请求对象变量可以直接通过调用请求(变量),而集合名称进行访问。 在这种情况下,Web服务器搜索按以下顺序集合:
- 请求参数
- 形成
- 饼干
- ClientCertificate
- ServerVariables
文章来源: Search order of HttpRequest indexer