9

bower_componentsコンテンツをデフォルト以外の場所 (または など)に保持することを試しています/packages/../tools。実験の一環として、特定のルートに到達すると undersorejs パッケージ ディレクトリ内のファイルを参照できる asp.net mvc 5 アプリケーションをセットアップしようとしています。

次のnugetパッケージがあります(デフォルトに加えて)

Install-Package underscore.js
Install-Package Microsoft.Owin.StaticFiles
Install-Package Microsoft.Owin.Host.SystemWeb

これは、OWINスタートアップクラスにあるものです

 var fileSystem = new PhysicalFileSystem(
                    HttpContext.Current.Server.MapPath("~")+"/../packages/underscore.js.1.6.0"
                  );
 var options = new FileServerOptions {EnableDirectoryBrowsing = true, FileSystem = fileSystem};

 app.MapWhen(ctx => 
      ctx.Request.Uri.AbsolutePath.StartsWith("/__underscore"), 
      ab => ab.UseFileServer(options)
 );

/__underscore 私の理解と以前の実験では、これは非常に簡単です-リクエストが単純な静的ファイルサーバーを使用して始まる場合。ただし、に向かうと/__underscore、404エラーが発生します。

ただし、ブレークポイントを配置すると、UseFileServer ラムダが起動時に 1 回実行され、その後は実行されないことがわかりますが、述語ラムダはすべての要求で呼び出されます (そして正しい値を返します)。

私は何が欠けていますか?

4

1 に答える 1