gpt4 book ai didi

c# - 如何在一个解决方案中编程三个版本的 Light、Pro、Ultimate

转载 作者:太空狗 更新时间:2023-10-29 18:30:23 29 4
gpt4 key购买 nike

我想知道如何最好地在 VS2008 Professional(包括一个 Web 部署项目)中编写我的三个不同版本的 C# ASP.NET 3.5 应用程序。我的应用程序有 Light、Pro 和 Ultimate 版本(或版本)。目前,我在配置管理器中将所有内容都放在一个具有三个构建版本的解决方案中,并且我在整个代码中使用了预处理器指令(在大约一万行代码中有大约 20 个这样的结构,所以它是可以监督的):

#if light
//light code
#endif
#if pro
//pro code
#endif //etc...

我已经在 stackoverflow 中阅读了几个小时,并想过如何遇到例如Microsoft 通过其不同的 Windows 版本执行此操作,但没有找到我所期望的。某处有关于预处理器指令是否邪恶的激烈讨论。

我喜欢那些#if-directives 的地方是:

  • 差异的并排代码,所以我会理解的代码六个月后的不同版本
  • 和不给予的特殊利益out 其他版本的编译代码给客户。

好的,很长的解释,重复的问题:最好的方法是什么?

最佳答案

我很想在运行时期间使用不同的许可证来管理差异,并使用该配置启用/禁用功能。为什么?

  1. 您只需构建一个可部署的。
  2. 您可以更轻松地对此进行单元测试,而不是构建 3 个版本并对其进行测试。
  3. 用户可以升级并简单地收到一个新的许可证。他们不必升级/重新安装。

您必须权衡这一点与您对分发客户实际上并未付费的解决方案(并且可以通过适当安全的许可 key 轻松启用)的担忧。

关于c# - 如何在一个解决方案中编程三个版本的 Light、Pro、Ultimate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2942939/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com