2013-08-28 66 views
1

背景信息 我已经拥有共享大量内部程序集的3个网站的所有权,它们每个都连接到IIS中用于基本CRUD类型操作的WCF服务。NuGet管理内部程序集的版本控制--DLL地狱

几个不同的开发人员可以在任何时候在每个网站上工作,对共享程序集中使用的代码进行更改/添加。

问题 然后每个开发人员构建他们的代码并确保他们的网站正常工作。但他们不知道在更改共享代码时,他们可能会影响其他网站的功能。

要解决这个问题,我可以分别构建每个共享程序集,将dll复制到每个网站特定的目录并从那里添加引用。

然而,这标志了几个问题:

  1. 这意味着一直在打造的共享组件和手动复制该DLL给它需要的目录

  2. 当开发者在。共享程序集的最新源代码,他们以任何方式获得更改。

我曾考虑过使用nuget软件包来管理这个问题,但是这只能真正解决问题1,使它更容易管理特定的版本。

我希望这是有道理的...

其他人有任何建议/提示吗?

回答

1

这个没有真正的魔力。

开发人员不得不承担一定的责任,以确保对共享程序集的更改不会影响引用那些程序集的其他代码您确实不应该跨项目共享它们。如果他们在这些共享程序集中发生的变化确实经常发生,您可能会考虑将这些部分或其更改的方法迁移到每个单独的项目中。像这样共享程序集应该只能用于绝对核心功能,这些功能应该很少发生变化。