web-dev-qa-db-ja.com

パス '/'のマップに失敗しました。 .net 4.0

Visual Studio 2010で開いたばかりの.netアプリがあり、起動時に尋ねられたときに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

私はvis googleで見つけた最も人気のある解決策を試しました(../を〜/に置き換えますが、何もありません...)

更新:

ルックアップコンストラクタ:

public Lookups()
{           
    _dirPath = System.Web.HttpContext.Current.Server.MapPath("/") + _xmlPath;           
}
20
kralco626

私はそれが古い質問であることを知っていますが、記録のためにIIS then

コンソールの「iisreset」は、「パス「/」をマップできませんでした」の解決に役立つ場合があります。問題。 IISでサイトの名前を変更した後、この問題が発生しました。

46
tymtam

私はMicrosoftステップバイステップブックの練習をしようとしていただけで、ASP.NETアプリケーションをプリコンパイルしようとしたときにこの問題にぶつかりました。

これが私がこれを乗り越えた方法です-そしてそれを理解するのに1日かかりました!

Visual Studioコマンドプロンプトを開いてビルド/プリコンパイルを行う場合、右クリックして[管理者として実行]を選択する必要があります。

このaspnet_compiler -v DeployThis C:\ DeployThis -f -uを実行しようとしたときに必要なことはそれだけです。

12
Greg Barth

System.Web.HttpContext.Current.Server.MapPath("~/")を試してください。 ~

5
Daniel A. White

同じ問題があり、IISRESETはそれをしませんでした。マップしようとしている仮想ディレクトリには二重のバックスラッシュ(d:\folder\\subfolder\)の名前付け(IIS仮想ディレクトリはPowerShellスクリプトで作成されました)。余分なバックスラッシュを削除すると、HostingEnvironment.MapPathが例外をスローしなくなりました。

念のため、これは誰かを助けることができます:-)

3
Henrik Stenbæk