Visual studio 2015 使用静态路径进行包解析的Nuget包管理器

Visual studio 2015 使用静态路径进行包解析的Nuget包管理器,visual-studio-2015,npm,package,nuget,Visual Studio 2015,Npm,Package,Nuget,每次我在VS中通过Nuget的扩展安装新包时,它都会检查静态位置中是否存在目标包(C:\Users[me]\Documents\Code\Nuget) 当我生成项目时,这是一个问题,因为如果不编辑.csproj文件来解决依赖关系,我无法将它们直接签入TFS。这些设置都是基于一个包一个包的基础上进行的,因此非常繁琐 然而,当我的同事通过添加新软件包时,我看不出他们的Nuget/VS2015安装与我自己的有什么区别。他们的经理在项目目录中添加一个“Packages”文件夹。然后,他们的项目具有Nu

每次我在VS中通过Nuget的扩展安装新包时,它都会检查静态位置中是否存在目标包(C:\Users[me]\Documents\Code\Nuget)

当我生成项目时,这是一个问题,因为如果不编辑.csproj文件来解决依赖关系,我无法将它们直接签入TFS。这些设置都是基于一个包一个包的基础上进行的,因此非常繁琐

然而,当我的同事通过添加新软件包时,我看不出他们的Nuget/VS2015安装与我自己的有什么区别。他们的经理在项目目录中添加一个“Packages”文件夹。然后,他们的项目具有Nuget resolution的相对路径。

是什么导致了这种行为,我能做些什么来解决它? 既然我们都没有在知情的情况下更新Nuget设置,那么什么会导致这样的配置副作用呢

是什么导致了这种行为,我能做些什么来解决它?既然我们都没有在知情的情况下更新Nuget设置,那么什么会导致这样的配置副作用呢

您可以在NuGet.config中设置
repositoryPath
,您可以在
%APPDATA%\NuGet\NuGet.config中的全局配置文件中检查以下设置:

     <config>
        <add key="repositoryPath" value="C:\Users\Documents\Code\Nuget" />
     </config>


使用此设置,NuGet会将包存储在解决方案文件夹下。

这似乎是NuGet设置的问题,而不是NuGet本身的问题。NuGet有一个将包还原到的位置的设置。此处引用:。我相信,如果您在项目中创建恢复位置,VS将在csproj中使用项目相对路径files@SurelyTheresABetterWay,是否有此问题的更新?你能从我的更新答案中得到有用的信息吗?如果没有,请免费告诉我,我将继续关注。我已经检查了您提供的路径,以及这里的官方Nuget文档中所有可能的路径。所有配置文件均未指定存储库路径。我还在VS中重新安装了Nuget扩展,但该行为仍然存在。@当然可以,也不确定出现此奇怪问题的原因,但您可以尝试在解决方案文件夹下添加Nuget.config来解决此问题。你可以参考更新答案中的详细信息。这让我走上了正确的道路。出于某种原因,我从未访问过AppData的位置。我能够找到有问题的配置文件,并删除导致问题的节点。然后,我不得不在解决方案XML中做一些额外的工作。我还使用了您的Nuget.config解决方案,以确保在将来任何人出现这种情况时,我都有一个手动覆盖。非常感谢!
<?xml version="1.0" encoding="utf-8"?>
<configuration>
   <config>
      <add key="repositoryPath" value="Packages" />
   </config>
</configuration>