J'ai hérité d'une application web ASP.NET écrite en C#. Dans de nombreuses pages du site, le nom d'hôte est récupéré à l'aide de :
BaseHost = Request.Url.Host;
Comme j'utilise Visual Studio 2012 Express et le serveur IIS Express local installé, il semble que je sois bloqué avec un numéro de port ajouté au nom d'hôte (localhost) lorsque je débogue/exécute localement. Le code ci-dessus n'entraîne pas l'inclusion du numéro de port et, en tant que tel, brise les liens générés par le code (liens d'éléments de menu, redirections, etc).
Je vois que je peux résoudre le problème en changeant le code en :
BaseHost = Request.Url.Authority;
Cela semble régler le problème en incluant le port lorsque je fonctionne localement (localhost:4652) et lorsqu'il est publié sur mon serveur d'essai (development.mysite.com).
Ma question : Est-ce que c'est mal vu ? Y a-t-il un moment ou une situation où cela va causer des problèmes sur mon site ? Il semble beaucoup plus facile de remplacer rapidement toutes ces instances. J'ai envisagé d'écrire une petite routine pour ajouter : with Request.Url.Port
mais il semble plus facile d'utiliser Request.Url.Authority
. Trop facile peut-être...
J'ai essayé de rechercher ma question en ligne et sur MSDN, mais je ne vois pas de réponse.