当您将 nuget 包添加到项目时,它会将程序集放在解决方案级别的 /packages 文件夹中。
我知道有办法改变它,但我想知道为什么这是默认位置,因为这些原因似乎非常无用:
1) 如果您的项目属于多个解决方案的一部分,则 /packages 文件夹不一定是项目所期望的位置。
2) 您需要手动将其签入到其他团队成员的源代码控制中,这比需要它的项目的一部分方便得多。
3) 如果您将项目移动到文件系统上的其他位置或移动到没有完整代码库的另一台机器上,它将找不到它期望的 /packages 文件夹。
如果 NuGet 只是在项目中使用 /packages 文件夹,而不是解决方案,似乎所有这些都将得到解决。无论如何,这似乎是一个更合乎逻辑的地方来放置项目所依赖的包。
所以......我假设在解决方案级别有一些很好的理由这样做,我希望有人能启发我。