【问题标题】:C# The type initializer for 'Google.Apis.Json.NewtonsoftJsonSerializer' threw an exceptionC# 'Google.Apis.Json.NewtonsoftJsonSerializer' 的类型初始化程序引发异常
【发布时间】:2015-10-26 08:03:06
【问题描述】:

我正在使用 google api 编写一个 winform 应用程序。我刚刚添加了 youtube v3 api,现在我收到了错误:

“System.TypeInitializationException”类型的未处理异常 发生在 Google.Apis.Auth.dll 中

附加信息:类型初始化器 'Google.Apis.Json.NewtonsoftJsonSerializer' 抛出异常。

内部异常是:

{"无法加载文件或程序集 'Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' 或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(异常来自 HRESULT: 0x80131040)":"Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed"}

我已经尝试解决这个问题一个小时,因此欢迎提出任何建议。

我正在使用所有 NuGet 包的最新版本,没有可用的更新。

我使用的 api 是: https://www.nuget.org/packages/Google.Apis.Drive.v2/ https://www.nuget.org/packages/Google.Apis.YouTube.v3/

【问题讨论】:

  • 岁月流逝 - 没有任何变化))但现在Newtonsoft.Json, Version=12.0.0.0

标签: c# google-api


【解决方案1】:

我遇到了这个错误。我使用的是 Visual Studio 2017,并且安装了 Newtonsoft.Json 的当前版本(当时)(11.0.2)。当我安装当前版本的 Google.Apis (1.35.1) 时,我收到错误“'Google.Apis.Json.NewtonsoftJsonSerializer' 的类型初始化程序引发异常”。查看内部异常信息时,我发现 Google.Apis 期待 Newtonsoft.Json 版本 10。我删除了 Newtonsoft 和 Google.Apis,然后通过 nuget 重新安装了 google.apis。版本 10 的 Newtonsoft.Json 也被自动安装并且错误消失了。

如果有人也遇到此错误,请确保实际安装了 Google.Apis 预期的 Newtonsoft 版本。

【讨论】:

    【解决方案2】:

    我找到了答案,我不小心删除了对 Newtonsoft.Json 包的引用,当我重新添加它时,我不知何故从不同项目的包中选择了旧版本,而不是我的项目包。

    从我当前的项目包中添加正确的 dll 后,一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-16
      • 1970-01-01
      • 2016-03-27
      • 1970-01-01
      • 1970-01-01
      • 2017-05-18
      • 2013-05-15
      • 2013-11-08
      相关资源
      最近更新 更多