【发布时间】:2014-12-25 08:59:24
【问题描述】:
我正在使用 google api 版本 3 集成 google calander,使用 NuGet 包 Install-Package Google.Apis.Calendar.v3 并参考 this link。运行 Web 应用程序时出现以下错误:
System.IO.FileLoadException**:无法加载文件或程序集 '
System.Net.Http.Primitives, Version=2.2.22.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。这 定位程序集的清单定义与程序集不匹配 参考。 (HRESULT 异常:0x80131040)---> System.IO.FileLoadException: 无法加载文件或程序集 'System.Net.Http.Primitives, Version=1.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 或其依赖项之一。这 定位程序集的清单定义与程序集不匹配 参考。 (HRESULT 异常:0x80131040)
用于此的网络配置文件是:
<configuration>
<system.web>
<compilation debug="true" strict="false" explicit="true" targetFramework="4.0" />
</system.web>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.9.0" newVersion="2.6.9.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.9.0" newVersion="2.6.9.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.2.22.0" newVersion="2.2.22.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.5.0.0" newVersion="2.2.22.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
包配置如下:
<?xml version="1.0" encoding="utf-8"?>
<packages xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<package id="Google.Apis" version="1.9.0" targetFramework="net40" />
<package id="Google.Apis.Auth" version="1.9.0" targetFramework="net40" />
<package id="Google.Apis.Calendar.v3" version="1.9.0.1110" targetFramework="net40" />
<package id="Google.Apis.Core" version="1.9.0" targetFramework="net40" />
<package id="log4net" version="2.0.3" targetFramework="net40" />
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="net40" />
<package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="net40" />
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net40" />
<package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net40" />
<package id="Newtonsoft.Json" version="6.0.4" targetFramework="net40" />
<package id="Zlib.Portable" version="1.10.0" targetFramework="net40" />
</packages>
bith 类似于reference link中的内容
更新:
--- 内部异常堆栈跟踪结束--- at Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务 任务)在 Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(任务 任务)在 Microsoft.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(任务任务) 在 Microsoft.Runtime.CompilerServices.ConfiguredTaskAwaitable
1.ConfiguredTaskAwaiter.GetResult() at Google.Apis.Auth.OAuth2.GoogleWebAuthorizationBroker.<AuthorizeAsync>d__1.MoveNext() in c:\code\google.com\google-api-dotnet-client\default\Tools\Google.Apis.Release\bin\Debug\test\default\Src\GoogleApis.Auth.DotNet4\OAuth2\GoogleWebAuthorizationBroker.cs:line 59 --- End of inner exception stack trace --- at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task1.get_Result() 在 testVB.home.Page_Load(Object sender, EventArgs e) in D:\GoogleCalandarDemo\testApp\testVB\home.aspx.vb:第 26 行
这是否意味着错误出现在我所指的dll 中?
【问题讨论】:
-
确保您在项目引用中引用了正确的程序集。版本必须匹配 2.2.22.0
标签: c# asp.net .net vb.net google-api