Wie überprüft man, ob Request.QueryString in ASP.NET einen bestimmten Wert hat oder nicht?
Ich habe eine error.aspx
Seite. Wenn ein Benutzer kommt auf die Seite, dann holt der Fehler Weg in page_load()
Methode URL mit Request.QueryString["aspxerrorpath"]
und es funktioniert gut.
Aber wenn ein Benutzer greift direkt auf die Seite die es generiert eine Ausnahme, weil aspxerrorpath
ist nicht da.
Wie kann ich überprüfen, dass aspxerrorpath
da ist oder nicht?
Kommentar zu dem Problem
ich habe auch versucht, mittels Anfrage.QueryString.Count != 0 aber dann ist das problem, wenn der Benutzer befestigen jedes Ding, wie ?abc=1223 dann wieder wird es geben Ausnahme
- Anfrage.QueryString.Count != 0
einfach sagen, wenn es nicht - Parameter. InformationsquelleAutor der Frage Peeyush | 2011-12-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie einfach überprüfen
null
:InformationsquelleAutor der Antwort BrokenGlass
Überprüfen Sie den Wert des Parameters:
Wenn es nicht vorhanden ist, wird der Wert
null
, wenn es vorhanden ist, aber hat kein Wert festgelegt ist, wird ein leerer string sein.Glaube ich, dass die oben genannten werden Ihre Bedürfnisse besser als nur ein test für
null
, als eine leere Zeichenfolge ist genauso schlecht für Ihre spezifische situation.InformationsquelleAutor der Antwort Oded
Zu prüfen, eine leere QueryString, die Sie verwenden sollten
Request.QueryString.HasKeys
Eigenschaft.Um zu überprüfen, ob der Schlüssel vorhanden ist:
Request.QueryString.AllKeys.Contains()
Dann können Sie erhalten, ist ' s Wert, und tun Sie alle anderen Kontrollkästchen, die Sie wollen, wie isNullOrEmpty, etc.
InformationsquelleAutor der Antwort MarianoC
Zurück, wenn es einen Wert
InformationsquelleAutor der Antwort Peter
Können Sie auch versuchen:
InformationsquelleAutor der Antwort shapiro yaacov
Was über einen direkteren Weg?
InformationsquelleAutor der Antwort ProfK
Um Ihr problem zu lösen, schreiben Sie die folgende Zeile auf Ihrer Seite Page_Load-Methode.
.Net 4.0 bietet mehr näher auf null, leer oder Leerzeichen-strings, verwenden Sie es, wie gezeigt, in der folgenden Zeile:
Diese wird nicht ausgeführt, Ihre nächsten Anweisungen (Ihre business-Logik), wenn die query-string nicht haben Sie aspxerrorpath.
InformationsquelleAutor der Antwort Imran Rizvi
denke, die überprüfen, die Sie suchen, ist dies:
Gibt es
null
weil im query-string dann hat es keinen Wert für diesen Schlüssel.InformationsquelleAutor der Antwort user5690126