无法加载文件或程序集'Newtonsoft.Json,Version = 6.0.0.0,Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed'

时间:2017-06-13 10:38:39

标签: entity-framework json.net devops azure-pipelines-release-pipeline

我正在尝试从VSTS版本管理执行实体框架迁移,为此我遵循了link

我在应用程序的部署任务之前以这种方式配置此任务:

enter image description here

在发布过程中,我在执行上述任务后得到了异常。

System.IO.FileLoadException:无法加载文件或程序集“Newtonsoft.Json,Version = 6.0.0.0,Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed”或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)

在我的项目中,我将 Newtonsoft.Json 版本用作 9.0.1 ,因为其他DLL依赖于此版本。所以我严格使用相同版本的 Newtonsoft.Json

的app.config

       <dependentAssembly>

          <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />

          <bindingRedirect oldVersion="0.0.0.0-9.0.1" newVersion="9.0.1" />

      </dependentAssembly>

在此处发布问题之前,我会在Google中搜索一些与我的问题相关的链接,但这些链接对解决此问题没有帮助。

Could not load file or assembly 'Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'

我在堆栈溢出中发现了类似的问题,但是没有人不能发布答案。这是该问题的链接 migrate.exe ignoring binding redirects

您能否告诉我如何尽快解决上述错误?

1 个答案:

答案 0 :(得分:0)

我猜你有类似

的东西
<dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json"  publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
    <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
</dependentAssembly>

在你的app / web.config

您需要确保将6更改为9,以便您的应用查找正确/已安装的版本,例如

<dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json"  publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
    <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0"/>
</dependentAssembly>
相关问题