尝试使用适用于Windows Azure的Enterprise Library 5.0 Integration Pack工作的WASABi获取this Azure Autoscale演示项目时出现此错误。正确遵循所有指令时抛出的错误是:
尝试获取类型实例时发生激活错误 自动定标器,关键“” 在Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(Typ e serviceType,String key)in C:\首页\克里斯\项目\ CommonServiceLocator \主\中号 icrosoft.Practices.ServiceLocation \ ServiceLocatorImplBase.cs:第57行 在 Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstanceTSe 服务 C:\首页\克里斯\项目\ CommonServiceLocator \主\ Microsoft.Practices .ServiceLocation \ ServiceLocatorImplBase.cs:第90行 PB_WASABi_autoscaler.Program.Main(String [] args)in c:\ Users \ daniel \ Documents \ Visual Studio 2012 \项目\ PB-芥末自动配置器\ PB-芥末自动配置器\ PROGR am.cs:第13行
使用Windows Azure 1.7库。
答案 0 :(得分:3)
教程(和其他在线资源)主要使用Azure 1.6 SDK。
在控制台应用程序中有一个引用 Azure SDK 1.6中的WindowsAzure.StorageClient.dll文件。在Azure下 SDK 1.7环境存在此错误消息:激活错误 在尝试获取Autoscaler类型的实例时出现,键“”。在 我们找到的错误详细信息:无法加载文件或程序集 'Microsoft.WindowsAzure.StorageClient,Version = 1.1.0.0, Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个 依赖。定位程序集的清单定义没有 匹配程序集引用。 (来自HRESULT的异常:0x80131040)。
解决方案:
app.config文件中的绑定重定向将解决问题:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Microsoft.WindowsAzure.StorageClient"
publicKeyToken="31bf3856ad364e35"
culture="neutral" />
<bindingRedirect oldVersion="1.1.0.0"
newVersion="1.7.0.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
来源:here