我一直想知道在引用第三方程序集时最佳做法是什么。不久前我问了一个问题“Dependencies and references: what exactly should I reference”并收到了一些值得思考的问题,但我并不完全相信。我有一个第三方程序集需要构建我的项目,根据我到目前为止所读到的,我应该只引用构建我的项目所需的程序集。这留下了第三方程序集的运行时依赖性问题。如果我引用那些引用列表也会变得很大(因为有几个依赖项)并且包含很多程序集,我不知道什么做了,哪些与我的项目无关。此外,我想避免在任何这些中使用公共方法,只使用主要的第三方程序集。我怎样才能以体面的方式做到这一点? 任何帮助都表示赞赏,因为我很困惑。
为了让我知道我在这里处理的是第三方库使用hibernate和log4net以及办公室互操作程序集。
感谢。
答案 0 :(得分:3)
如果我必须处理未在GAC中注册的库,我使用以下方法:
如果您不知道依赖项,可以使用Dependency Walker。
答案 1 :(得分:2)
我在许多(C#)项目中使用的替代方案是:
不确定这是否是一个很好的解决方案,但到目前为止一直在为我工作。
答案 2 :(得分:1)
您还可以使用NDepend来了解和控制您从层库中使用的内容。我写了一篇关于这个Controlling the usage of libraries
的文章