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:)

Foi útil?

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:

  1. QueryString
  2. Form
  3. Os cookies
  4. ClientCertificate
  5. ServerVariables
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top