¿Cómo puedo usar Server.MapPath () desde global.asax?
-
06-09-2019 - |
Pregunta
Necesito usar Server.MapPath()
combinar un poco de trayectoria archivos que almaceno en el web.config
.
Sin embargo, dado que se basa en la Server.MapPath()
HttpContext actual (creo), no soy capaz de hacer esto. Al intentar utilizar el método, a pesar de que su "disposición", me sale el siguiente excepción:
funcionamiento del servidor no está disponible en este contexto.
¿Hay otro método que puede trazar un directorio raíz web relativa como ~/App_Data/
a la ruta física completa como C:\inetpub\wwwroot\project\App_data\
?
Solución
Usted podría intentar System.Web.Hosting .HostingEnvironment.MapPath () .
No se requiere HttpContext.
Otros consejos
Uso AppDomain.CurrentDomain.BaseDirectory
porque Context
podría devolver null !!
Cuando en Global.asax, utilice el Contexto objeto:
context.Server.mappath ()
Contexto también le permite acceder a la colección de la sesión, el objeto de la petición, el objeto respuesta. Muy útil cuando se desea registrar los errores, por ejemplo
Usted podría intentar HttpContext.Current.Server.MapPath ( "/") -. Así es como me he referido antes en clases