Request["id"]
erhält einen Wert aus den Sammlungen QueryString
, Form
, Cookies
oder ServerVariables
. Die Reihenfolge, in der sie gesucht werden, ist nicht in der Dokumentation angegeben, aber wenn Sie sich den Quellcode ansehen, sehen Sie, dass es die Reihenfolge ist, in der sie erwähnt werden.
Wenn Sie also wissen, wo sich Ihre Variable befindet, was Sie normalerweise tun, ist es besser, die spezifischere Option zu verwenden.
Die Anforderungssammlung ist eine Obermenge von QueryString, zusammen mit einigen weiteren Daten, die sich auf die aktuelle Anfrage beziehen.
für "besser" - ich würde empfehlen, dass Sie präzise und explizit (dh verwenden Sie QueryString), um den Überraschungsfaktor zu vermeiden, wenn Sie unerwartete Ergebnisse erhalten, nur um zu erkennen, dass Sie einen Schlüssel für eine bestimmte Anfrage verwendet haben hat keinen Wert für die Abfragezeichenfolge angegeben, ist jedoch in einer anderen Sammlung vorhanden.
Gemäß der Dokumentation ist der HttpRequest
indexer
Der QueryString, Formular, Cookies oder ServerVariables-Auflistungsmember im Schlüsselparameter angegeben.
Ich würde lieber Request.QueryString["id"]
verwenden, da es expliziter ist, woher der Wert kommt.
Request.QueryString ["id"] schaut in die Sammlung wurde per QueryString übergeben. Request.Item ["id"] untersucht alle Sammlungen (QueryString , Formular, Cookies oder ServerVariablen). Daher sollte die QueryString-Eigenschaft nach Möglichkeit bevorzugt werden, da sie kleiner ist.
Request.QueryString["id"]
gibt den Wert eines Elements in der Abfragezeichenfolge mit dem Schlüssel id
zurück, während Request["id"]
ein Element aus einem von Request.QueryString, Request.Form, Request.Cookies oder zurückgibt Request.ServerVariables.
Es ist erwähnenswert, dass die Dokumentation für Request.Item
( Auf das, worauf Sie tatsächlich zugreifen, wenn Sie Request["id"]
aufrufen, gibt nicht die Reihenfolge an, in der die Sammlungen durchsucht werden, sodass Sie theoretisch je nach ASP-Version ein anderes Ergebnis erhalten könnten. Netz, auf dem du rennst.
Wenn Sie wissen, dass der gewünschte Wert in Ihrer Abfragezeichenfolge enthalten ist, ist es immer besser, Request.QueryString["id"]
für den Zugriff zu verwenden, als Request["id"]
.
Tags und Links c# asp.net query-string