每当我有一个在不同网站/应用程序中使用的库时,我总是将库的项目添加到同一个解决方案中并从那里引用它。当需要在解决方案中进行调试时,这很好,但在所有其他情况下,它似乎毫无意义,并且在解决方案资源管理器中占用了更多空间。
另一个正面或负面的是,如果该库由公司中的其他人更新,那么我构建另一个使用相同内容的应用程序,他们可能已经破坏了构建。如果无论出于何种原因无法使用当前应用程序修复,那么您可以返回源代码控制并回滚到旧版本,但这似乎有点过于OTT。
我只是想知道其他人对这个问题的想法是什么。您通常做什么,参考dll或者将项目添加到您的解决方案中。
答案 0 :(得分:10)
我们将生产Dll保存在网络驱动器上的一个众所周知的位置,并通过DFS UNC路径(没有驱动器号)进行引用。这样我们可以同时使用不同版本的库,并且在需要使用较新版本之前,更新不会破坏代码/强制重新编译。标准命名方案可用于确保项目总是希望使用最新版本。
答案 1 :(得分:3)
您也可以在GAC中注册您的dll。 GAC处理所有引用,版本控制等,并且是安全的。分配了一个强密钥,这是访问GAC的dll的先决条件,您可以安全地访问Dll,并且您使用共享服务器,这可能是非常宝贵的。您使用此dll的站点具有组件的中央调用端口。 GAC在MSDN上有几篇文章有很多优势,毫无疑问,谷歌有数百篇文章致力于它。
答案 2 :(得分:1)
将库保留在项目之间的某个共享文件夹中,并引用它。这样,当它更新时,变化将持续到处。对于调试,我认为如果你方便地保存库的.pdb文件,那么你应该能够进入dll,但是,你是否应该关注调试库?