首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最佳WinForms配送计划

最佳WinForms配送计划
EN

Stack Overflow用户
提问于 2012-07-04 15:09:57
回答 2查看 366关注 0票数 2

我在一家冶金企业工作,在那里我们自己生产生产软件。我们正在考虑改变我们的分配计划,以适应我们目前的需要。我希望你能给出一些想法。

我们的应用程序是WinForms,C# Framework4.0。它位于内部网中。它分为三个项目(UX、业务层和模型层)。应用程序在模块中被“逻辑地”划分,每个模块执行不同的任务,但它们共享一些功能(即商业模块、财务模块、引用模块)。

如果需要,还需要注销所有用户,以便他们能够更新他们的应用程序(在严重更新的情况下)。

我们有两种方案(也许您可以添加其他方案):

场景1.

整个应用程序只有一个用ClicOnce发布的EXE。

优点:

  • 很容易检测到任何变化及其影响。
  • 只有一次分发

缺点:

  • 小的变化影响整个公司(如果更改不影响我的“模块”,为什么要更新?)
  • 分布重
  • 必须改进您的测试,以便在发行版中留下更少的错误。

场景2.

一个小应用程序(EXE)“触发”不同的实例(每个模块一个)。

优点:

  • 更新打火机。
  • 孤立的错误。
  • 孤立的发展。

缺点:

  • 必须检测每个更改,以便重新编译/分发每个受影响的模块(EXE)。
  • 创建一个新项目以存储共享内容(表单、类等)。

你认为如何?你知道其他的分配计划吗?

谢谢!

哈维尔

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-04 15:17:01

我将采用两种场景的混合方案,并为每个模块部署一个ClickOnce。共享代码中的更改将“触发”每个依赖模块的新部署。

您可以探索System.Deployment命名空间,特别是集成“严重更新”需求的ApplicationDeployment.CheckForUpdate法,以便应用程序能够自我更新。

票数 3
EN

Stack Overflow用户

发布于 2012-07-04 15:17:01

好吧..。我想有人已经有这个问题了。他决定创建动态链接库。

你应该

  • 1 exe :具有非常简单代码的GUI :只调用模块
  • n:具有明确API的模块,可由GUI或其他模块调用。

然后,您可以轻松地用自动更新替换一个模块。例如,这就是IE的工作方式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11331678

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档