首页 > 其他 > 详细

Nuget Reference 丢失问题

时间:2021-02-05 15:18:24      阅读:49      评论:0      收藏:0      [点我收藏+]

现象

在 Visual Studio 2017 中创建一个控制台项目。创建出来的项目如下所示。
技术分享图片

通过 NuGet 管理器,添加 Newtonsoft.Json 的 NuGet 包,安装之后,项目中添加了一个 packages.config 文件。
技术分享图片

内容如下:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Newtonsoft.Json" version="12.0.3" targetFramework="net461" />
</packages>

然后,在这个文件上右键,将它合并到 PackageRerefence 中。

技术分享图片

完成之后,可以在项目的 References 中看到已经合并了。

技术分享图片

但是。这个时候,你直接打开项目文件,是看不到这个引用的。也就是说,它没有被写入到项目文件中。

技术分享图片

解决方案

1. 退出 Visual Studio

直接关闭 Visual Studio,就会看到一个保存文件的提示框,这就是保存修改之后的项目文件。

技术分享图片

保存之后的内容就变成了如下所示。

 <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="System.Data" />
    <Reference Include="System.Net.Http" />
    <Reference Include="System.Xml" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="Program.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
  </ItemGroup>
  <ItemGroup>
    <None Include="App.config" />
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json">
      <Version>12.0.3</Version>
    </PackageReference>
  </ItemGroup>
  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

2. 不退出,直接重新构建

我一般不会经常关闭 Visual Studio。那么,你可以重新构建一下项目,这样会直接保存项目文件,而且没有提示。

删除依赖的问题

加进来了,怎么删除该依赖呢?

你可以直接打开项目文件,并删除关于 nuget 包的引用。但是你会发现该依赖仍然存在。

  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json">
      <Version>12.0.3</Version>
    </PackageReference>
  </ItemGroup>
``

但是,你还是会在解决方案管理器中看到对它的依赖,甚至你在整个项目中都搜索不到关于它的文本。但它确实还是存在。

解决的方式,打开项目下的 obj 文件夹,会看到关于 nuget 的几个文件。
![](https://img2020.cnblogs.com/blog/13475/202102/13475-20210205123905318-1403980713.png)

把它们全部删除掉,这个依赖就会消失了。

Nuget Reference 丢失问题

原文:https://www.cnblogs.com/haogj/p/14376706.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!