Je dois utiliser Server.MapPath()
pour combiner certains chemins de fichiers que je stocke dans le web.config
.
Cependant, comme Server.MapPath()
repose sur le HttpContext actuel (je pense), je suis incapable de le faire. Lorsque j'essaie d'utiliser la méthode, même si elle est «disponible», j'obtiens l'exception suivante:
Le fonctionnement du serveur n'est pas disponible dans ce contexte.
Existe-t-il une autre méthode qui peut mapper un répertoire relatif racine Web tel que ~/App_Data/
le chemin d'accès physique complet tel que C:\inetpub\wwwroot\project\App_data\
?
c#
asp.net
global-asax
server.mappath
application-start
John Bubriski
la source
la source
Utilisez
AppDomain.CurrentDomain.BaseDirectory
parce queContext
peut retourner null !!la source
Dans Global.asax, utilisez l' objet context :
context.Server.mappath ()
Le contexte vous permet d'accéder également à la collection de sessions, à l'objet de requête, à l'objet de réponse. Très utile lorsque vous souhaitez enregistrer des erreurs, par exemple
la source
Context
dans Global.asax.Vous pouvez essayer HttpContext.Current.Server.MapPath ("/") - C'est ainsi que je l'ai référencé auparavant dans les classes.
la source