'#System.AggregateException 39;尝试使用Google API进行身份验证时发生在mscorlib.dll中

时间:2014-09-20 17:34:36

标签: c# calendar oauth-2.0 google-api-dotnet-client aggregateexception

我正在尝试使用Google Calendar API为自己创建一个小日历应用。我正在使用C#和.NET。基本上,我所做的只是从here复制示例代码 并从here添加了FileDataStore类 在Google Developers Console中创建了一个项目,为日历启用了API,通过NuGet安装了库,以及所有这些。 所以我的代码现在看起来像这样:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using Google;
using Google.Apis.Auth.OAuth2;
using Google.Apis.Calendar.v3;
using Google.Apis.Calendar.v3.Data;
using Google.Apis.Services;

namespace calendar
{
public partial class Form1 : Form
{
    public Form1()
    {
        UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
            new ClientSecrets
            {
                ClientId = "here's my client id",
                ClientSecret = "and the secret",
            },
            new[] { CalendarService.Scope.Calendar },
            "user",
            System.Threading.CancellationToken.None).Result;

        // Create the service.
        var service = new CalendarService(new BaseClientService.Initializer()
        {
            HttpClientInitializer = credential,
            ApplicationName = "Calendar API Sample",
        });
        InitializeComponent();
    }
}
}

但是当我尝试构建它时 - 它在第一个(UserCredential credential = ...)行的mscorlib.dll中发生'System.AggregateException'崩溃。具体做法是:

  

mscorlib.dll中出现'System.IO.FileNotFoundException'类型的第一次机会异常

     

其他信息:Falied加载文件或程序集(最初:Неудалосьзагрузитьфайлилисборку)“Microsoft.Threading.Tasks.Extensions.Desktop,Version = 1.0.16.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”或其中一个依赖关系。找不到指定的文件(最初:либооднуизихзависимостей。Неудаетсянайтиуказанныйфайл。)

     

如果存在此异常的处理程序,则可以安全地继续该程序。

这可能很容易修复,我想我忽略了一些东西,但我不知道它是什么。你能告诉我,该做什么,或者我应该在文档中的哪个位置?

UPD:我自己修正了: 我所要做的就是通过NuGet中的命令“Install-Package Microsoft.Bcl.Async -Version 1.0.166-beta -Pre”更新Microsoft.Bcl.Async。

1 个答案:

答案 0 :(得分:1)

我看到你自己已经解决了,但无论如何你在下面的帖子中有更多的文档:ASP.net app crashes - Could not load file or assembly 'Microsoft.Threading.Tasks.Extensions.Desktop'