0

我正在尝试使用 Google Calendar API 为自己制作一个小日历应用程序。我为此使用 C# 和 .NET。基本上,我所做的只是从这里复制示例代码并从这里 添加 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”类型的第一次机会异常

附加信息:加载文件或程序集失败(最初:Не удалось загрузить файл или сборку)“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。

4

1 回答 1

1

我看到您已经自己解决了,但无论如何您在以下线程中有更多文档:ASP.net app crash - Could not load file or assembly 'Microsoft.Threading.Tasks.Extensions.Desktop'

于 2014-09-23T07:21:38.700 回答