将HtmlAgilityPack引用添加到类中时出现错误

3

在将此内容添加到我的类中时,我遇到了一个错误,请问有人知道解决方案吗? 使用4.5框架。

Could not load file or assembly 'HtmlAgilityPack, Version=1.4.9.0, Culture=neutral,   PublicKeyToken=bd319b19eaf3b43a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

我在我的packages.config文件中有这个内容

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="HtmlAgilityPack" version="1.4.9.0" targetFramework="net45" />
</packages>

安装包显示未声明错误。

我尝试过在调试中添加它,将其本地包含,但似乎没有任何作用。

更新:

仍然是相同的错误,我已经进行了如下调整,但不确定是否正确:

<configuration>
<packages>
    <package id="HtmlAgilityPack" version="1.4.9.0" targetFramework="net45" />
</packages>
<dependentAssembly>
    <assemblyIdentity name="HtmlAgilityPack" publicKeyToken="bd319b19eaf3b43a" culture="neutral" />
    <bindingRedirect oldVersion="1.4.5.0-1.4.7.0" newVersion="1.4.9.0" />
</dependentAssembly>
</configuration>

1
你是否正在使用 NuGet?如果没有,请使用。 - Antonio Bakula
我尝试了,但是出现了错误,然后我添加了该程序集,但这导致了错误。 - user3763117
您可能需要手动将<assemblyBinding>添加到您的应用程序/ web.config文件中,类似于http://issues.umbraco.org/issue/U4-2550。 - Rhumborl
@user3763117 这很奇怪,请尝试管理解决方案和项目的 NuGet 包(右键单击解决方案/项目)。 - Antonio Bakula
从你的意思来看,是要重新安装吗? - user3763117
1
错误一直出现。 - user3763117
1个回答

3
我通过在web.config(或app.config)中添加相同的assemblyIdentity和bindingRedirect来解决了这个问题。确保它在相应的位置:在configuration - runtime - assemblyBinding内部。
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="HtmlAgilityPack" publicKeyToken="bd319b19eaf3b43a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.11.23.0" newVersion="1.11.23.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

希望它有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接