Aspnet_compiler.exe做了什么?

tra*_*max 6 asp.net asp.net-mvc aspnet-compiler pre-compilation

我正在尝试为我们的MVC5.1应用程序预编译视图以提高第一个加载性能(有关更多上下文,请参阅此问题).

我正在玩aspnet_compiler.exe:

aspnet_compiler -p d:/path/to/myapp/ -v myapp
Run Code Online (Sandbox Code Playgroud)

我可以肯定地看到正在进行的编译 - 关于Obsolete方法使用的警告.但它把结果放在哪里?

在实验之前我已经清理过Temporary Asp.Net Files,只是为了看到结果.编译结束后,什么都没发生.双方c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\仍然是空的.

我也尝试使用精确路径执行虚拟路径

aspnet_compiler -p d:/path/to/myapp/ -v d:/tmp/myapp
Run Code Online (Sandbox Code Playgroud)

那个文件夹留空了.但是编译器的第二次运行要快得多,因为我没有清理构建.这让我觉得结果可以在某处获得.

所以我的问题是:它在哪里存储编译结果?如何让IIS使用这些结果而不是实时编译?

更新:我已经找到了如何捕获编译的输出.只需将路径指定为最后(或第一个)参数:

aspnet_compiler -p d:/path/to/myapp/ -v / d:/tmp/myapp
Run Code Online (Sandbox Code Playgroud)

这就留下了一个问题,我怎样才能让IIS拿起它?