Résolution de chemin Physique & Virtuel en ASP.NET
Nos applications web une fois déployés ne sont généralement pas installées sur le serveur web dans la même arborescence que sur notre poste de travail et cela peut causer des problèmes d'accès à des fichiers. Nous sommes donc souvent confronté, au besoin de récupérer un chemin Physique depuis un chemin Virtuel pour y effectuer des manipulations sur le système de fichier (tests d’existence, créations, suppressions de répertoires ou de fichiers).
exemples:
- chemin physique: D:WebsitesMonSiteContentpage
- chemin virtuel: **~/**Content/page
En ASP.Net une méthode retrouve un chemin physique à partir d'un chemin virtuel, la méthode statique de la classe Server MapPath() (qui porte bien son nom !):
string MonCheminPhysique = HttpContext.Current.Server.MapPath("~/Content/index.css");
nous pouvons également exploiter la méthode équivalente de la classe Request:
string MonCheminPhysique = HttpContext.Current.Request.MapPath("~/Content/index.css");
Voici 2 articles intéressants: