我知道当我们想使用第三方组件时,像 NuGet 这样的包管理器会帮助我们。
从 Nuget Codeplex 页面:
NuGet 是一个免费的、开源的、专注于开发人员的包管理系统,用于 .NET 平台,旨在简化在开发过程中将第三方库合并到 .NET 应用程序中的过程。
.NET 平台上有大量有用的第 3 方开源库,但对于那些不熟悉 OSS 生态系统的人来说,将这些库拉到一个项目中可能会很痛苦。
让我们以ELMAH为例。这是一个很好的错误记录实用程序,它不依赖于其他库,但集成到项目中仍然是一个挑战。这些是它采取的步骤:
Find ELMAH Download the correct zip package. “Unblock” the package. Verify its hash against the one provided by the hosting environment. Unzip the package contents into a specific location in the solution. Add an assembly reference to the assembly. Update web.config with the correct settings which a developer needs to search for.
这是一个没有依赖关系的库。想象一下为 NHibernate.Linq 这样做,它有多个依赖项,每个依赖项都需要类似的步骤。我们可以做得更好!
NuGet 自动执行包及其依赖项的所有这些常见且繁琐的任务。它消除了将第三方开源库合并到项目源代码树中的几乎所有挑战
这些步骤是我们要设置项目时执行的简单任务。它仅用于自动添加 3rd 方组件并确定配置文件中出错的机会?或者它有更多的责任!?