我有一个.net应用程序,我刚刚在visual studio 2010中打开并在它启动时问我转换为4.0。我去尝试构建网站,我收到此错误:
Failed to map the path '/'.
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
[InvalidOperationException: Failed to map the path '/'.]
System.Web.Hosting.HostingEnvironment.MapPathActual(VirtualPath virtualPath, Boolean permitNull) +8804446
System.Web.Hosting.HostingEnvironment.MapPathInternal(VirtualPath virtualPath) +42
System.Web.VirtualPath.MapPathInternal() +4
System.Web.HttpRequest.MapPath(VirtualPath virtualPath, VirtualPath baseVirtualDir, Boolean allowCrossAppMapping) +107
System.Web.HttpRequest.MapPath(VirtualPath virtualPath) +37
System.Web.HttpServerUtility.MapPath(String path) +99
NU.WorkManagement.Lookup.Lookups..ctor() +82
NU.WorkManagement.Engine.GlobalModule.Init(HttpApplication application) +624
System.Web.HttpApplication.InitModulesCommon() +80
System.Web.HttpApplication.InitModules() +43
System.Web.HttpApplication.InitInternal(HttpContext context, HttpApplicationState state, MethodInfo[] handlers) +828
System.Web.HttpApplicationFactory.GetNormalApplicationInstance(HttpContext context) +304
System.Web.HttpApplicationFactory.GetApplicationInstance(HttpContext context) +107
System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +327
我尝试了最流行的解决方案,我发现谷歌(替换和../与〜/但没有任何...)
更新
Lookups构造函数:
public Lookups()
{
_dirPath = System.Web.HttpContext.Current.Server.MapPath("/") + _xmlPath;
}
答案 0 :(得分:46)
我知道这是一个古老的问题,但是对于记录,如果你正在运行IIS,那么
控制台中的'iisreset'可能有助于解决“无法映射路径'/'。”问题。在IIS中重命名站点后,我遇到了这个问题。
答案 1 :(得分:12)
我只是尝试在Microsoft Step Step中进行练习,并且在尝试预编译ASP.NET应用程序时遇到了这个问题。
以下是我如何克服这个问题 - 我花了一天时间才弄明白!
当您打开Visual Studio命令提示符以执行构建/预编译时,必须右键单击并选择“以管理员身份运行”。
这就是我尝试运行此aspnet_compiler时所需的全部内容-v DeployThis C:\ DeployThis -f -u
答案 2 :(得分:5)
试试System.Web.HttpContext.Current.Server.MapPath("~/")
。请注意~
。
答案 3 :(得分:3)
我们遇到了同样的问题,IISRESET没有这样做。
事实证明,我们尝试映射的虚拟目录在命名中有一个双反斜杠(d:\folder\\subfolder\
)(IIS虚拟目录是使用powershell脚本创建的)。删除额外的反斜杠使HostingEnvironment.MapPath停止抛出异常。
就这种情况而言,这可以帮助某人: - )