当前位置: 首页 > 知识库问答 >
问题:

从 TFS 读取时未安装 NuGet 包

易书
2023-03-14

我们正在使用Visual Studio 2019,我们有一个解决方案,它引用了nuget.org或我们的私人服务器上的一些Nuget包,我们正在使用packages.config管理管理解决方案,问题是该解决方案中有一个ASP.NET项目没有安装任何所需的包(在我们的情况下,它错过了NewtonSoft.json),并且正确安装了所有其他的包,即使我们启用了包恢复,并且解决方案中还有其他ASP. Net项目正确安装了Newtonsoft包,但是每次从零开始读取解决方案的最后一个版本时(如果您删除本地解决方案并重新读取它),您需要从TFS安装专门为该项目手动Newtonsoft.json。

PS:这是一个每次都可以在5分钟内解决的问题,但我知道有些地方不对劲,我一直在试图理解它是什么,我不想在本地解决它,但我需要一个在TFS层面上解决它的解决方案,所以如果你可以,请帮助我,或者如果你知道这里有任何其他可以帮助的问题,请指导我(如果我还没有看到)。

我的NuGet。配置文档:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <packageSources>
        <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
        <add key="Microsoft Visual Studio Offline Packages" value="C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\" />
        <add key="MxNuget" value="our server path" />
    </packageSources>
    <activePackageSource>
        <add key="All"
             value="(Aggregate source)" />
    </activePackageSource>
    <packageRestore>
        <add key="enabled" value="true" />
        <add key="automatic" value="true" />
    </packageRestore>
<solution>
    <add key="disableSourceControlIntegration" value="true" />
</solution>
</configuration>

我们得到的错误如下:

The name 'Newtonsoft' does not exist in the current context.

共有1个答案

帅雅逸
2023-03-14

我遇到的问题是因为TFS没有恢复所需的所有包,因为当他看到解决方案中的文件夹“包”时,他只会检查包是否在里面,完成后,他发现的版本和本地计算机上的版本可能不同,这是导致问题的原因,所以我想删除TFS上的包文件夹,但找不到。为此,我在解决方案中安装了一个包,该包将.tfignore添加到解决方案目录中的.nuget文件夹中,最后一个文件告诉TFS忽略服务器上的包文件并始终对其进行恢复。

有用的问题:

1 - TFS 无法还原 Nuget 包。

2-NuGet包丢失

3-外部:TFS 生成服务器上缺少 Nuget 包

我按照以下步骤解决了问题:

>

  • 将DisableSource的控制集成包安装到缺少Newtonsoft.jsonNuget的项目中。

    在我的ASP.Net项目引用的项目上统一了所有版本的NewtonSoft.json。(我认为这是主要问题,因为我之前统一了他们,但我用他们的配置文件更新了整个组)。

    在 Visual Studio 中,打开“工具”--

    删除了所有的包裹现金。

    重新编译了解决方案。

    已推送到 TFS。

  •  类似资料:
    • 本文向大家介绍Dapper.NET 从Nuget安装Dapper,包括了Dapper.NET 从Nuget安装Dapper的使用技巧和注意事项,需要的朋友参考一下 示例 在Visual Studio GUI中进行搜索: Tools > NuGet Package Manager > Manage Packages for Solution... (Visual Studio 2015) 或者在Nu

    • 我创建了空的WebAPI项目,并将该项目签入TFS。生成时出现以下错误: 错误:此项目引用了此计算机上缺少的NuGet包。使用NuGet包还原来下载它们。如需详细资讯,请参阅http://go.microsoft.com/fwlink/?LinkID=322105.遗失的档案是..\包\Microsoft。net compilers . 1 . 0 . 0 \ build \ Microsoft

    • 复制步骤:使用VS2012终极版(我相信任何版本也可以)创建一个类库项目,右键单击引用并管理nuget包。使用nuget包管理器,尝试安装System.数据。Sqlite(10.21.2015)最新版本。 我得到以下错误消息: 当然,如果我只安装“核心”包,它就可以工作。我不明白为什么我不能安装官方的完整包。

    • 我正在尝试读取存储在Firebase数据库中的值。这就是数据库的样子: URL: 现在,从Android端,这就是我尝试检索数据的方式:

    • 主要内容:1. 用于稳定版本的预构建软件包,2. 源码包,3. Ubuntu Server安装Nginx实例目前,nginx软件包可用于以下发行版和版本: RHEL/CentOS: 版本 支持的平台 5.x x86_64, i386 6.x x86_64, i386 7.x x86_64, ppc64le Debian: 版本 代码名称() 支持的平台 7.x wheezy x86_64, i386 8.x jessie x86_64, i386 Ubuntu: 版本 代码名称() 支持的平台

    • 问题内容: 尝试使用安装软件包时显示错误,而其他软件包正在正常安装。我正在使用python 3.7。为什么会发生此错误? 问题答案: 在运行python 3.6时,此方法有效,但在python 3.7中则无效。 PyAudio仅支持python 3.6: pip将获取并安装PyAudio滚轮(预包装的二进制文件)。当前,有一些轮子与Python 2.7、3.4、3.5和3.6的官方发行版兼容。 解