繁体   English   中英

在创建新的HiveConnection时加载Microsoft.WindowsAzure.Storage的例外情况

[英]Exception from loading Microsoft.WindowsAzure.Storage when creating a new HiveConnection

我有这个代码工作:

ClusterDetails details

return new HiveConnection(
      new Uri(details.ConnectionUrl),
      details.HttpUserName,
      details.HttpPassword,
      details.DefaultStorageAccount.Name,
      details.DefaultStorageAccount.Key);

但是当我通过Nuget更新dll时,我开始得到这个异常:

{“无法加载文件或程序集'Microsoft.WindowsAzure.Storage,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。找到的程序集的清单定义与程序集引用不匹配。(例外情况HRESULT:0x80131040)“:”Microsoft.WindowsAzure.Storage,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35“}

这是我的packages.config:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Microsoft.Data.Edm" version="5.6.1" targetFramework="net45" />
  <package id="Microsoft.Data.OData" version="5.6.1" targetFramework="net45" />
  <package id="Microsoft.Data.Services.Client" version="5.6.1" targetFramework="net45" />
  <package id="Microsoft.Hadoop.Client" version="1.1.0.7" targetFramework="net45" />
  <package id="Microsoft.Hadoop.Hive" version="0.12.5126.42915" targetFramework="net45" />
  <package id="Microsoft.WindowsAzure.ConfigurationManager" version="1.8.0.0" targetFramework="net45" />
  <package id="Microsoft.WindowsAzure.Management.HDInsight" version="1.1.0.7" targetFramework="net45" />
  <package id="Newtonsoft.Json" version="5.0.8" targetFramework="net45" />
  <package id="System.Spatial" version="5.6.1" targetFramework="net45" />
  <package id="WindowsAzure.Storage" version="3.0.3.0" targetFramework="net45" />
</packages>

我已经完成并手动检查了bin目录中的所有dll,以确保版本匹配。 我还检查过以确保它们都符合Nuget的最新版本。

我尝试过添加变体:

<dependentAssembly>
  <assemblyIdentity name="Microsoft.WindowsAzure.Storage" publicKeyToken="31bf3856ad364e35" culture="neutral" />
  <bindingRedirect oldVersion="0.0.0.0-3.0.3.0" newVersion="3.0.3.0" />
</dependentAssembly>

到app.config,但它只是在代码的不同部分创建一个新的异常。

IHDInsightClient _client;
var details = await _client.CreateClusterAsync(clusterInfo);

此代码失败,但出现以下异常:

{“值不能为空。\\ r \\ nParameter name:provider”}

无论我告诉它使用哪个版本的dll,都会发生这种情况。 我在这之外安装了SDK的v2.2。 我卸载它,但这没有帮助。

在这一点上,我没有想法,因为它而在最后期限之后落后。 有没有人遇到过这个? 有没有人对如何解决它有任何想法?

昨天发布了存储库的3.1.0.1版本(我从周日开始就处理这个问题)。 更新到那个修复了问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM