Ich muss in der Lage sein, über ein Benutzersteuerelement auf die vollständige URL der Seite zuzugreifen, auf der ich mich befinde. Geht es nur darum, eine Reihe von Anforderungsvariablen miteinander zu verketten? Wenn ja, welche? Oder gibt es einen einfacheren Weg?
c#
asp.net
user-controls
RedWolves
quelle
quelle
Antworten:
Normalerweise verwende ich
Request.Url.ToString()
, um die vollständige URL (einschließlich Querystring) zu erhalten, ohne dass eine Verkettung erforderlich ist.quelle
Request.Url.ToString()
ist nicht enthalten queryString.Hier ist eine Liste, auf die ich mich normalerweise für diese Art von Informationen beziehe:
Hoffentlich finden Sie dies nützlich!
quelle
Request.QueryString
kehrtq=qvalue
nur zurückDiese Eigenschaft erledigt alles, was Sie brauchen, alles in einem kurzen Aufruf.
quelle
Denn
ASP.NET Core
Sie müssen es buchstabieren:Oder Sie können Ihrer Ansicht eine using-Anweisung hinzufügen:
dann
Das
_ViewImports.cshtml
könnte ein besserer Ort dafür sein@using
quelle
Request.RawUrl
quelle
Wenn Sie die vollständige URL vom http bis zum Querystring benötigen, müssen Sie die folgenden Variablen verketten
quelle
Besser zu bedienen
Request.Url.OriginalString
alsRequest.Url.ToString()
(laut MSDN )quelle
OriginalString
.Vielen Dank, ich habe eine Kombination Ihrer beiden Antworten @Christian und @Jonathan für meine spezifischen Bedürfnisse verwendet.
Ich muss mich nicht um sichere http kümmern, brauchte die Servername-Variable und die RawUrl behandelt den Pfad vom Domain-Namen und enthält den Querystring, falls vorhanden.
quelle
Wenn Sie auch die Portnummer benötigen, können Sie verwenden
Beispiel:
quelle
Versuche Folgendes -
quelle