c# - 如何使用 Visual Studio 2017 或 Mage 发布实时和测试 (QA) 版本的 WPF 双部署
问题描述
我希望有一些 .Net WPF 开发人员可以展示他们的部署专家知识并回答这个问题。我想部署两个版本的 WPF 桌面应用程序;一活一测(QA)。
我们即将结束仅在我们的内部网络中运行的 WPF 桌面应用程序的初始开发。部署是使用通过 Visual Studio 2017 配置的 ClickOnce 进行的文件共享。我们让用户测试,当我们部署更新(通常是错误修复)时,他们会从 ClickOnce 更新中受益。当我们上线时,我们将设置我们的内部属性以指向一个实时数据库实例。
上线后,我们将开始下一阶段的开发。然后,我们将需要一个“测试”版本以及他们桌面上现在的“实时”版本。我们不知道该怎么做。查看 Microsoft 文档,似乎没有解释这个用例。可能是,但还不清楚。教程/演练会很棒!
我在 StackOverflow 上找到了一个答案,但它是一种需要一些开销的解决方法。那里有一条关于使用 Mage 的评论,但没有深入说明该做什么,并且如前所述,MSDN 文档非常广泛,示例很少。
解决方案
根据相关的 vlog,我记录了一个解决方案:
脚步
- 为“测试”版本创建一个源代码控制 (github) 分支,在主服务器上使用“实时”(只要有两个分支,任何分支安排都应该有效)
git branch Test
git push -u origin Test
(这可以在进行以下本地更改后完成)
- 在“发布...应用程序”下的 Visual Studio 2017 (VS) 中,将“测试”后缀添加到“程序集名称”
- 在“发布...发布”下的 VS 中,将“测试”后缀添加到“发布文件夹位置”和“安装文件夹 URL”
- 在“发布...发布...选项...”下的 VS 中,将“测试”后缀添加到“产品名称”
自定义步骤
- 将“Test”后缀添加到日志文件名(我们使用在“App.config”中配置的 log4net)
<file value="${LOCALAPPDATA}\\Our_Company\\log-Test.txt" />
- 应用程序使用的任何其他文件或资源(我们没有)
- 我们在“资源”中有一个应用程序图标,“测试”版本的颜色与“实时”版本的颜色不同
在这些步骤之后继续“发布”,并且有两个桌面版本。然后我们通过电子邮件与我们的用户共享指向 setup.exe 的链接。
最后,一旦测试 (QA) 阶段完成,将“测试”分支合并到“主”(或任何“实时”分支)并反转上述重命名步骤(即删除所有“测试”后缀)。并反转任何自定义步骤。
推荐阅读
- parallel-processing - 暂存空间与主节点磁盘空间中的普通磁盘空间有何不同?
- python - discord.ext.commands.errors.ExtensionNotFound:无法加载扩展“cogs.random”
- c# - 默认结构的正确处理
- git - 无法使用交互式变基更改 git 提交消息
- firebase - 给定文档ID时如何检查firestore数据库文档是否存在?
- python - Shareplum - 删除行 Sharepoint 列表
- laravel - 将 laravel auth 与不同的表一起使用
- visual-studio - Visual Studio 2019 无法加载模板
- xamarin.forms - 实施闪屏。如何指定图像大小?
- node.js - 如何使用 OAuth 2.0 API 使用 Google 访问令牌通过 Passport 正确进行身份验证?