将nuget包添加到项目时,会将程序集放在解决方案级别的/ packages文件夹中。为什么NuGet将软件包放在“解决方案级别”?
我知道,有很多方法可以改变这一点,但我不知道为什么是这样的默认位置,因为它似乎这些原因非常无益的:
1)如果你有一个项目,是的一部分多个解决方案,/包文件夹不一定是你的项目预期的地方。
2)您需要将其手动检入到其他团队成员的源代码管理中,这比将其作为需要它的项目的一部分要方便得多。 3)如果您将项目移动到文件系统的其他位置,或移动到不具有完整代码库的其他计算机上,则无法找到它所期望的/ packages文件夹。
如果NuGet只是在项目中使用了一个/ packages文件夹,而不是解决方案,似乎所有这些都将被解决。这似乎是一个更合乎逻辑的地方放置项目依赖的软件包。
所以......我假设在解决方案层面有一些很好的理由,我希望有人能够启发我。
嗯,这可能有帮助。 Nuget会自动下载旧版本的软件包吗?即如果我从包含某个nuget提供的程序集v1.1的版本控制中获取一些源代码,并且该程序集的当前版本是3.4,会发生什么情况? – chrismay