【发布时间】:2017-05-02 23:41:52
【问题描述】:
我们的自动化构建流程如下:
构建脚本将最新版本的存储库提取到一个干净的目录中
它使用以下命令行命令运行构建
devenv SolutionFile.sln /rebuild "ServerDeployment|Any CPU" |输出文件 -FilePath $BuildOutputFile
我希望它在无人值守的情况下运行。
但随后构建暂停以显示模式对话框:
将 IIS Express 设置应用于项目“CMS.Website”的服务器 URL“http://localhost:60143/”时出错。您可能必须手动编辑 applicationHost.config 文件并进行更改才能使您的站点正常运行。
我必须按 OK 才能继续构建。这不再是一个有效的无人值守构建。
我看到 Visual Studio 已经在我的 build 文件夹中自动生成了一个文件 .vs\applicationhost.config。
我将此文件与我的开发文件夹中的文件.vs\applicationhost.config 进行了比较。我可以看到我的开发文件夹中的文件版本(不会导致错误)在节点下有一个额外的site条目://configuration/system.applicationHost/sites
我怎样才能让这个消息框消失?显然我不在乎这是否在 IIS Express 上运行,因为我正在执行构建以部署在不同的服务器上。
可能的解决方案(我不是特别喜欢)是:
- 将 .vs\applicationhost.config 文件检入到存储库中,以便将其作为构建的一部分检出,而不是重新生成
- 修改我的构建脚本,使其从
C:\Program Files\IIS Express\config\templates\PersonalWebServer\applicationhost.config复制模板文件,然后修改此 XML 文件以手动添加新的site条目
我的问题有更好的解决方案吗?
【问题讨论】:
标签: asp.net visual-studio iis-express visual-studio-2017