Pesquisar ordem de HttpRequest indexador
-
06-07-2019 - |
Pergunta
Se você fizer um índice simples em itens do pedido através Request [key], ele procura no 4 locais . Qual é a ordem? Alguém faz um palpite nessa página em "Cookies, ServerVariables, Formulário e QueryString". Alguém sabe com certeza? Documentação seria um bônus:)
Solução
string público este [key string] {get; }
Declarando Tipo: System.Web.HttpRequest Assembly: System.Web, Version = 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;
}
}
Outras dicas
Basta usar refletor e você pode ver por si mesmo. A ordem é QueryString, Form, Cookies, então ServerVariables.
Isto é de um ASP local , mas ainda se aplica para ASP.NET:
Todas as variáveis ??Object Request pode ser acessados ??diretamente pelo telefone Request (variável) sem a nome da coleção. Neste caso, a Web Pesquisas de servidor as coleções no seguinte ordem:
- QueryString
- Form
- Os cookies
- ClientCertificate
- ServerVariables