我通常在我的asp web应用程序上进行文件系统发布,然后在我的Web服务器的web根目录中部署它们,visual studio将我的aspx页面与我的apis和库单独打包到DLL中。
我想知道如何使用Team Build实现相同的效果。截至目前,我能够使用默认模板运行构建定义,并且我得到的输出只是二进制文件DLL而没有生成任何aspx页面
http://postimg.org/image/occoo03zh/
但是我只是在团队构建
中没有网页的DLLhttp://postimg.org/image/mat7co6vp/
我曾尝试传递各种MSBuild Arguments,希望它会改变输出,但到目前为止还没有运气。任何人都知道我可以解决这个问题的确切原因和方法吗? TFS的输出是否正常?
尚未得到解决,非常感谢任何见解。
答案 0 :(得分:0)
Asp页面未编译,您编译的dll将被输出到二进制目录,但您的asp页面将保留在sources目录中。您需要添加一个post build活动来将您的asp结构复制到drop文件夹中。
您可以通过查看构建工作区(在构建服务器上)并查看sources目录中的结构是否正确以及是否在bin文件夹中创建了dll来确认这一点。如果是这样,你可以复制整个结构。
答案 1 :(得分:0)
您需要传递MSbuild一些参数,以使其生成已发布的网站,就像您在文件系统发布时看到的那样。有关使用Visual Studio Online执行的类似操作,请参阅here。
/p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true