csproj参考本地nuget包文件夹

csproj参考本地nuget包文件夹,nuget,csproj,Nuget,Csproj,我不得不把我的项目移交给微软去调查LiveUnitTesting的一个bug,我得到的代理说有太多的错误要看,他不想麻烦 好的,很明显我的csproj有…\…\个包,这实际上是C的根,nuget指向的地方 在我的csproj中是否没有可以告诉VS“只使用本地nuget使用的任何位置”的变量 比如{NugetPath}\Castle.Core.4.2.1\lib\net45\Castle.Core.dll或其他什么?TL;考虑一下。< /P> 长版本: “正常”包在生成时会自动恢复,我知道禁用它

我不得不把我的项目移交给微软去调查LiveUnitTesting的一个bug,我得到的代理说有太多的错误要看,他不想麻烦

好的,很明显我的csproj有…\…\个包,这实际上是C的根,nuget指向的地方

在我的csproj中是否没有可以告诉VS“只使用本地nuget使用的任何位置”的变量

比如{NugetPath}\Castle.Core.4.2.1\lib\net45\Castle.Core.dll或其他什么?

TL;考虑一下。< /P> 长版本:

“正常”包在生成时会自动恢复,我知道禁用它的唯一方法是使用nuget.config设置或Visual Studio设置。我不明白为什么负责使用他人代码调查问题的代理会禁用自动包还原,因此我只能假设您的回购协议禁用了自动包还原,或者您的项目存在一些不标准的地方导致它在代理的机器上失败。模板中的新项目不存在此问题

无论如何,这不是你问的问题。您的问题的答案是否定的,没有指向NuGet restore文件夹的内置MSBuild属性

但是,使用PackageReference for NuGet依赖项而不是packages.config的项目不会修改csproj以向程序集文件添加路径。它是在构建时自动计算的,因此,当人们在您克隆repo的不同位置克隆您的repo时,或者如果您在repo周围移动代码,则不需要修改csproj,只需运行nuget恢复,构建失败的风险就更小


我假设您在repo之外使用packages文件夹的原因是为了与多个repo共享该文件夹,从而节省磁盘空间。PackageReference会自动执行此操作。它不再为每个repo/解决方案创建包文件夹,并直接从全局包文件夹使用程序集进行构建。

Man,我以为我已经迁移了PackageReference不再将
元素放入csproj中的程序集,因此如果您尝试手动迁移(例如,删除packages.config文件并添加PackageReference>,这是一个不完整的迁移。不仅需要删除正确的引用元素,还可能需要删除道具和目标导入,以及其他我不知道的事情。