簡體   English   中英

作為依賴項和不同的publicKeyTokens共享時出現RestSharp錯誤

[英]RestSharp error when shared as a dependency and different publicKeyTokens

使用來自DocusignTwilioAuth0 API。 所有3個都將RestSharp.dll作為依賴項。

如果我使用RestSharp.dll附帶DocusignDocusign效果很好,但Auth0Twillio給出錯誤:

無法加載文件或程序集'RestSharp,Version = 104.1.0.0,Culture = neutral,PublicKeyToken = null'

如果我使用正常的RestSharp.dll (Install-Package RestSharp), TwilioAuth0工作正常,但在使用Docusign時出現錯誤:

無法加載文件或程序集'RestSharp,Version = 100.0.0.0,Culture = neutral,PublicKeyToken = 5xxxxxxxxxxxx'

添加綁定重定向並不能解決問題。 沒有綁定重定向,我在日志中收到此錯誤:

比較程序集名稱導致不匹配:MAJOR VERSION。

如果我使用綁定重定向:

比較程序集名稱導致不匹配:PUBLIC KEY TOKEN。

綁定重定向代碼:

<dependentAssembly>
    <assemblyIdentity name="RestSharp" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-105.2.3.0" newVersion="105.2.3.0" />
 </dependentAssembly>

通過將Docusign程序包中包含的RestSharp.dll重命名為“RestSharpDocusign.dll”並將其復制到我的項目中,暫時解決了該問題。

我修改了程序集綁定,以便在調用版本100.0.0.0時,它將使用publicKeyToken Docusign加載特殊的“RestSharpDocusign.dll”。 其他任何東西都會使用帶有null publicKeyToken的標准RestSharp.dll。

<dependentAssembly>
    <assemblyIdentity name="RestSharp" publicKeyToken="null" culture="neutral" />
    <bindingRedirect oldVersion="100.0.0.1-105.2.3.0" newVersion="105.2.3.0" />
</dependentAssembly>
<dependentAssembly>
    <assemblyIdentity name="RestSharp" publicKeyToken="598062e77f915f75" culture="neutral" />
    <codeBase version="100.0.0.0" href="ult/RestSharpDocusign.dll" />
</dependentAssembly>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM