【发布时间】:2015-09-17 06:32:46
【问题描述】:
发布 ASP.NET 5 Web 应用程序时,我的输出 DLL 在哪里?
运行 MSBuild 的 FileSystemPublish 时,发布目录如下所示:
- approot 文件夹:包、运行时和源代码
- wwwroot 文件夹:web.config 和 AspNet.Loader.dll
- 网络
- web.cmd
MSBuild.exe "C:/MyApplication/MyProj.xproj" /t:Build,FileSystemPublish /p:PublishConfiguration=Release /p:PublishOutputPathNoTrailingSlash="C:/a/MyApplication"
从日志输出中我可以看到 dnu publish 被调用:
dnu publish "C:/MyApplication" --out "C:/a/MyApplication" --configuration Release --runtime dnx-clr-win-x86.1.0.0-beta6 --quiet
如果我查看 web.cmd 内部,我可以看到 DNX 确实在从源代码运行应用程序:
@"%~dp0approot\runtimes\dnx-clr-win-x86.1.0.0-beta6\bin\dnx.exe" --appbase "%~dp0approot\src\MyApplication" Microsoft.Framework.ApplicationHost web %*
我能够成功地将 IIS 指向 wwwroot 目录。
IIS 如何知道调用web.cmd?这是在生产环境中提供 ASP.NET 5 应用程序的正确方法吗?
【问题讨论】:
标签: msbuild asp.net-core asp.net-core-mvc dnx dnu