Aktualisieren/Abfangen von HttpContext.Current.Request.QueryString
-
09-06-2019 - |
Frage
Hier ist etwas Seltsames.Ich verwende eine Codebasis wieder, die leider nicht aktualisiert werden darf.Dieser Code ruft auf HttpContext.Current.Request.QueryString
.Im Idealfall muss ich mit jeder gestellten Anfrage einen Wert in diese Sammlung einfügen.Ist das möglich – vielleicht in einem HTTP-Modul?
Lösung
Ohne Reflektion wäre es am einfachsten, die RewritePath-Funktion für das aktuelle HttpContext-Objekt zu verwenden, um die Abfragezeichenfolge zu ändern.
Mit einem IHttpModule, es könnte etwa so aussehen:
context.RewritePath(context.Request.Path, context.Request.PathInfo, newQueryStringHere!);
Hoffe das hilft!
Andere Tipps
Das Gleiche gilt für die Antwort von Espo, und ich möchte hinzufügen, dass Sie bei mittlerem Vertrauen (speziell für viele Shared Hostings) normalerweise keinen Zugriff auf Reflexion haben, also ...RewritePath wird wahrscheinlich Ihre einzige Wahl bleiben.