HttpContext.Current.Server.MapPath() 返回不一致的结果
HttpContext.Current.Server.MapPath() returning inconsistent results
我在使用 HttpContext.Current.Server.MapPath()
时遇到了一个奇怪的问题。
如果我打电话
HttpContext.Current.Server.MapPath("/")
或
HttpContext.Current.Server.MapPath("~")
我返回“C:\GitHub\MyWebApp”,这是我所期望的。但是如果我打电话给
HttpContext.Current.Server.MapPath("/folder")
或
HttpContext.Current.Server.MapPath("~/folder")
我正在获取“C:\folder”。我希望得到 "C:\GitHub\MyWebApp\folder"
我不明白这怎么会出错。
我是 运行 .Net 4.6.1 并使用 Visual Studio 2019 在 Windows 上调试,以防有任何不同。
恐怕这个有点尴尬 - 一个脚本在我的 IIS 配置中添加了一个虚拟文件夹,这是将“文件夹”重定向到“C:\folder”。回答是正确的,他们只是把我弄糊涂了,我在问问题之前没有发现配置。
感谢所有花时间思考这个问题的人。
我在使用 HttpContext.Current.Server.MapPath()
时遇到了一个奇怪的问题。
如果我打电话
HttpContext.Current.Server.MapPath("/")
或
HttpContext.Current.Server.MapPath("~")
我返回“C:\GitHub\MyWebApp”,这是我所期望的。但是如果我打电话给
HttpContext.Current.Server.MapPath("/folder")
或
HttpContext.Current.Server.MapPath("~/folder")
我正在获取“C:\folder”。我希望得到 "C:\GitHub\MyWebApp\folder"
我不明白这怎么会出错。 我是 运行 .Net 4.6.1 并使用 Visual Studio 2019 在 Windows 上调试,以防有任何不同。
恐怕这个有点尴尬 - 一个脚本在我的 IIS 配置中添加了一个虚拟文件夹,这是将“文件夹”重定向到“C:\folder”。回答是正确的,他们只是把我弄糊涂了,我在问问题之前没有发现配置。
感谢所有花时间思考这个问题的人。