加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 我可以使用msbuild打包带有发布配置文件的网站并跳过

发布时间:2020-12-16 06:49:21 所属栏目:asp.Net 来源:网络整理
导读:我有一个包含三个发布配置文件的网站解决方案,我们用它来转换每个目标环境的连接字符串: 测试 – 本地主机连接,没有转换,默认签入 暂存 – VM环境 生产 – 真正的交易 我们还有一些应用程序设置需要针对每个环境进行转换.因此,我们使用常规的基于构建配置的
我有一个包含三个发布配置文件的网站解决方案,我们用它来转换每个目标环境的连接字符串:

>测试 – 本地主机连接,没有转换,默认签入
>暂存 – VM环境
>生产 – 真正的交易

我们还有一些应用程序设置需要针对每个环境进行转换.因此,我们使用常规的基于构建配置的转换.

>调试 – 转换Staging的设置
>发布 – 转换生产设置

当我们尝试打包测试配置文件时,这会让我们陷入困境.我们打包它,以便测试人员可以从他们的系统上部署构建工件而不是源代码.但是,Test包会选择Debug app设置转换.

有没有办法告诉msbuild打包网站,使用测试配置文件,但跳过配置转换?或者我应该重新构建环境中的构建配置? (也就是说,单独保留Debug和Release并为每个环境创建一个构建配置)

命令行构建语句

我正在调试解决方案配置下构建我的测试配置,它肯定会获取转换后的Web.Debug.config文件.没有Web.Test.config文件,因为Test是“发布配置文件”而不是构建配置.

cmd> msbuild websites.sln /t:Build /p:Configuration=Debug;Platform="Any CPU";DeployOnBuild=true;DeployTarget=Package;PublishProfile=Test;VisualStudioVersion=11.0

也许我在这里做错了什么.我觉得配置/平台是多余的,因为我也在“发布配置文件”对话框中提供了这些内容. Visual Studio版本对我来说是一个惊喜,但生产zip包是必要的.

解决方法

我会为每个环境构建一个配置以保持一致性.但是,如果没有为特定环境(即web.Test.config)提供配置,则您发布的构建将只使用原始web.config文件中放置的内容而不进行转换.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读