Asp.net VSTS-在生成时编译aspx页面
我在Visual Studio Team Services上有一个任务,配置如下:Asp.net VSTS-在生成时编译aspx页面,asp.net,visual-studio,msbuild,continuous-integration,azure-devops,Asp.net,Visual Studio,Msbuild,Continuous Integration,Azure Devops,我在Visual Studio Team Services上有一个任务,配置如下: 该解决方案包含一个ASP.NET Web窗体应用程序。该任务编译解决方案,但不幸的是,.aspx文件上的编译错误被忽略。有没有办法检查生成时.aspx页面上的错误?TL;DR只需将MSBuild属性precompilebeforepublicsh设置为“true” 长版本: 首选选项是创建一个web包(一个.zip文件),然后将其提供给VSTS构建/发布任务,这些任务将在或上部署它 要创建web包,请在生成期间
该解决方案包含一个ASP.NET Web窗体应用程序。该任务编译解决方案,但不幸的是,.aspx文件上的编译错误被忽略。有没有办法检查生成时.aspx页面上的错误?TL;DR只需将MSBuild属性
precompilebeforepublicsh
设置为“true”
长版本:首选选项是创建一个web包(一个.zip文件),然后将其提供给VSTS构建/发布任务,这些任务将在或上部署它 要创建web包,请在生成期间通过将这些附加参数传递给MSBuild(在Visual Studio生成任务上)来触发:
这既可以预编译.aspx文件,也可以在代理计算机上的工件暂存目录本地复制.zip文件。使用
$(build.artifactstagingdirectory)
变量在后续任务中引用此目录以发布此工件。如Luca所述,预编译前重新发布
起到了作用
我决定发布另一个答案,因为他作为示例给出的MSBuild参数对我不起作用。我使用了以下论点:
/t:Package
/p:PackageLocation="$(build.artifactstagingdirectory)\website.zip"
/p:OutputPath=.\bin
/p:Configuration=$(BuildConfiguration)
/p:PrecompileBeforePublish=true
生成现在正在检测.aspx页面中的错误,例如缺少资源:
您有网站还是Web应用程序?(Web应用程序有代码隐藏文件)Web应用程序-有代码隐藏文件。谢谢,我来试试。我知道有一个神奇的属性可以做到这一点,但我找不到它:-)我已经在其他版本上生成了msdeploy包(.zip文件),我只需要一种方法在生成时检测.aspx文件中的错误。再次感谢Luca。为了使它适合我,我必须做一些更改,请检查我的答案。@Rui您能告诉我您对建议的msbuild参数有什么样的问题吗?在您的情况下,需要调用msbuild两次,而不是像这里那样调用一次。我试图调用msbuild一次,可能是我的错误。我不记得到底是什么错误。此外,我还必须使用
OutputPath
参数,否则所有程序集等都将在$(build.artifactstagindirectory)
文件夹中生成。
/t:Package
/p:PackageLocation="$(build.artifactstagingdirectory)\website.zip"
/p:OutputPath=.\bin
/p:Configuration=$(BuildConfiguration)
/p:PrecompileBeforePublish=true