如何使用使用Server.Mappath()从Global.asax的?
-
06-09-2019 - |
题
我需要使用Server.MapPath()
一些文件,我存储在web.config
路径结合起来。
然而,由于Server.MapPath()
依赖于当前HttpContext(我认为),我无法做到这一点。当尝试使用方法,即使它的“可用”,我得到以下异常:
服务器操作不可用在此上下文中。
是否有可以映射web根相对目录如~/App_Data/
到完整物理路径如C:\inetpub\wwwroot\project\App_data\
?另一种方法
解决方案
您可以尝试 System.Web.Hosting .HostingEnvironment.MapPath()。
不需要的HttpContext。
其他提示
使用AppDomain.CurrentDomain.BaseDirectory
因为Context
可能返回null !!
当在Global.asax中,使用 上下文 强>对象:
context.Server.mappath()
上下文允许您还访问会话集合,请求对象,响应对象。非常有用,当你想记录错误,例如:
您可以尝试HttpContext.Current.Server.MapPath(“/”) - 这是怎样我在上课前引用它
不隶属于 StackOverflow