在我们公司,我们有一个自定义库。我们在大多数项目中都使用它,并且我们的库仍在开发中。因此,有时我们必须在一天内构建和生成两次或更多新程序集。
我们使用 GAC 来存储我们的自定义库程序集。正如您猜测的那样,用新程序集替换 GAC 会变得很无聊。
出于这个原因,我们决定在解决方案中创建一个名为 Referenced Assemblies 的文件夹,并创建一个解决方案项目文件夹并在该解决方案文件夹中添加程序集。因此,当我们从 TFS 获取最新版本时,我们可以获得新版本的程序集。这比 GAC 更容易(但在理论上)
当我们开始使用时;问题变得清晰起来。例如,有时 Visual Studio 将 DLL 标记为“删除、锁定”,尽管没有删除。或者有时当我们的团队成员打开一个表单时,由于在程序集中找不到相关的类,设计器会抛出异常。我们不得不多次重建解决方案或重新启动 Visual Studio。
在 GAC 或 Referenced Assemblies 文件夹中存储程序集存在一个常见问题。您需要将新程序集放在某处以共享其他团队成员。例如,如果程序集存储在 GAC 中,它们可以通过 UNC 共享,否则如果程序集存储在 Referenced Assemblies 文件夹中,则新程序集已复制到其他需要的项目中。
在解决方案中存储引用程序集的最佳做法是什么?
我们使用 VS 2010 和 TFS 2010。我们的项目框架版本是 3.5