Ordre de recherche de l'indexeur HttpRequest
-
06-07-2019 - |
Question
Si vous faites un index simple dans les éléments de Request via Request [clé], il recherchera 4 emplacements . Quelle est la commande? Quelqu'un fait une proposition sur cette page sous "Cookies, Variables-Serveurs, Formulaires et Chaînes de requête". Est-ce que quelqu'un sait à coup sûr? La documentation serait un bonus:)
La solution
chaîne publique this [chaîne de clé] {get; }
Déclaration de type: 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;
}
}
Autres conseils
Utilisez simplement Reflector pour le voir par vous-même. La commande est QueryString, Form, Cookies, puis ServerVariables.
Il s'agit d'un site ASP , mais il s'applique toujours. vers ASP.NET:
Toutes les variables d'objet de requête peuvent être accessible directement en appelant Demande (variable) sans le nom de la collection. Dans ce cas, le Web serveur recherche les collections dans le ordre suivant:
- QueryString
- formulaire
- Cookies
- ClientCertificate
- Variables du serveur