首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >哪个visual解决方案类型适合我?

哪个visual解决方案类型适合我?
EN

Stack Overflow用户
提问于 2011-12-22 16:57:57
回答 4查看 325关注 0票数 6

我现在有一个我写的程序,它被分成3种不同的解决方案。

  1. 前端(全部显示相关内容)
  2. 解析器(多个(39)项目,每个项目创建一个dll来解析特定数据)
  3. Globals(多个(5)项目,每个项目创建一个dll,供解析器解决方案中的项目和前端使用)。

规定-

前端和解析器都要求全局dll在编译时存在,并在运行时使用。assembly.LoadReference.

  • Development is:C:\projects\myProg

  • deployed location is:C:\myProg

加载解析器dll。

我的问题是,我一直在反复讨论处理项目依赖关系的问题,指向全局dll的位置。我是指向已部署的位置还是开发位置,如果是,发布还是调试?

所以我开始查找不同的解决方案类型,我想知道是否应该为我的特定情况设置一个分区解决方案,还是一个多个解决方案。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-12-22 17:12:59

将所有项目添加到单个解决方案中。

将项目之间的任何引用更改为“项目引用”,而不是直接引用dll文件。这将解决许多依赖问题。

如果您有不经常更改的“库”文件,则可以选择将它们移动到单独的解决方案中。它的输出应该是“预构建”发行版dll,然后您可以从主解决方案中的标准位置引用该版本(最好的方法是添加一个post构建步骤,将输出复制到您的开发“库二进制文件”文件夹中。这样,构建过程就不会改变,您只需添加一个额外的步骤来获取所需的文件,您就可以完全控制构建过程)。这很好用,但是如果您需要经常更改这些预先构建的dll,则会很痛苦,所以它最好只用于代码库中相当静态的部分。

最后,考虑将许多项目合并到单个项目/程序集中。构建时间的杀手不是代码的数量,而是程序集的数量--在我的PC上,每个项目都为构建时间增加了相当恒定的3秒,所以通过合并小项目,我节省了相当多的构建时间。

票数 3
EN

Stack Overflow用户

发布于 2011-12-22 17:04:58

因为这3都是同一个系统的一部分,所以在每个项目中添加一个解决方案可能会更容易一些。

注意:您不需要从它们当前的位置移动任何东西。

只需创建一个新的空解决方案并执行右键单击Add >现有项目.对于您希望包含的每个项目,它们将保持在磁盘上的位置,但将一起打开。

当前(“旧”)解决方案也将是可用的,就像它们一样。

另外,请记住,如果您同时在VS的两个实例中编辑同一个项目,则在更改和保存时,它会困扰您重新加载源代码。

最重要的是,在相同的解决方案中使用项目将允许您在它们之间添加引用,而不是DLL文件。

票数 2
EN

Stack Overflow用户

发布于 2011-12-22 17:01:55

为什么它们分散在单独的项目中,将分析和全局合并成一个单一的集合。使UI程序集保持独立,并尽可能简单/小。

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

https://stackoverflow.com/questions/8607274

复制
相关文章

相似问题

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