Je dois pouvoir accéder à l'URL complète de la page sur laquelle je me trouve à partir d'un contrôle utilisateur. S'agit-il simplement de concaténer un ensemble de variables Request? Si oui, lesquels? Ou y a-t-il un moyen plus simple?
c#
asp.net
user-controls
Loups rouges
la source
la source
Réponses:
J'utilise généralement
Request.Url.ToString()
pour obtenir l'url complète (y compris la chaîne de requête), aucune concaténation n'est requise.la source
Request.Url.ToString()
n'inclut pas queryString.Voici une liste à laquelle je me réfère normalement pour ce type d'informations:
J'espère que vous trouverez cela utile!
la source
Request.QueryString
retoursq=qvalue
seulementCette propriété fait tout ce dont vous avez besoin, le tout en un seul appel.
la source
Car
ASP.NET Core
vous devrez le préciser:Ou vous pouvez ajouter une instruction using à votre vue:
puis
Le
_ViewImports.cshtml
pourrait être un meilleur endroit pour ça@using
la source
Request.RawUrl
la source
si vous avez besoin de l'URL complète comme tout, du http à la chaîne de requête, vous devrez concaténer les variables suivantes
la source
Mieux vaut utiliser
Request.Url.OriginalString
queRequest.Url.ToString()
(selon MSDN )la source
OriginalString
.Merci les gars, j'ai utilisé une combinaison de vos réponses @Christian et @Jonathan pour mon besoin spécifique.
Je n'ai pas besoin de m'inquiéter du HTTP sécurisé, j'avais besoin de la variable servername et le RawUrl gère le chemin du nom de domaine et inclut la chaîne de requête si elle est présente.
la source
Si vous avez également besoin du numéro de port, vous pouvez utiliser
Exemple:
la source
Essayez ce qui suit -
la source