【发布时间】:2017-12-19 21:32:30
【问题描述】:
我有一个奇怪的问题,希望有人可以帮助我。我有一台新笔记本电脑,我正在尝试在新机器上发布相同的 ASP.NET MVC 5 项目,并带有预编译的视图。但是,当我使用“发布期间预编译”选项进行发布时,它不会创建预编译视图。现在,如果我复制它运行的确切命令并在命令提示符中运行它,就会创建预编译视图。
这里是详细信息。两台机器都有带有 Visual Studio 2013 Update 5 的 Windows 10 周年更新(版本 1607)。在旧机器上使用相同的发布配置文件发布应用程序会生成预编译视图。在新机器上,“Publish Web”对话框的发布运行没有错误,但不会生成预编译视图。然后,我将这个确切的命令复制到 VS 用于预编译的命令提示符中:
C:\windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler.exe -v / -p C:\MyApp\obj\Release\AspnetCompileMerge\Source -c C:\MyApp\obj\Release\AspnetCompileMerge\TempBuildDir
当我运行它时,它在TempBuildDir\bin 目录中创建了预编译视图!
我能想到的机器之间的唯一区别是 Windows 更新。
有什么想法吗?谢谢。
【问题讨论】:
-
您可以选择发布设置来预编译应用程序。选择文件夹发布时,发布 -> 设置 -> 文件发布选项 -> 在发布期间选择预编译。
-
@txfun 我已经设置好了。同样,它可以在一台机器上运行,而不能在另一台机器上运行。相同的设置。
-
您是否保存并将发布设置推送到您的存储库中?
-
@txfun 是的,我是。感谢您的帮助。
标签: visual-studio-2013 asp.net-mvc-5 msbuild windows-10