Google Calendar API v3?

时间:2014-11-25 13:45:47

标签: vb.net google-api google-calendar-api

Sinse Google在17日停止使用API​​ v2,我的数据库与Google日历同步的应用程序停止运行。

现在我想迁移到v3,但是在vb.net代码中需要付出很多努力和缺乏示例。但是我设法得到了一些,但是它没有工作,我对它有一些疑问。

首先,Google网站上的新示例说明了使用.JSON文件。如何将其添加到项目中?

其次,这是来自Google的vb.net示例代码,但它不起作用:

Imports System.IO
Imports System.Threading
Imports Google.Apis.Auth.OAuth2
Imports Google.Apis.Calendar.v3
Imports Google.Apis.Services
Imports Google.Apis.Util.Store


Public Class Form1
    Private Shared Sub Main(args As String())
        Dim credential As UserCredential
        ' This example uses the client_secrets.json file for authorization.
        ' This file can be downloaded from the Google Developers Console
        ' project.
        Using stream = New FileStream("client_secrets.json", FileMode.Open, FileAccess.Read)
            credential = GoogleWebAuthorizationBroker.AuthorizeAsync(GoogleClientSecrets.Load(stream).Secrets, New () {CalendarService.Scope.Calendar}, "user", CancellationToken.None, New FileDataStore("Calendar.Auth.Store")).Result
        End Using

        ' Create the service.
        Dim service = New CalendarService(New BaseClientService.Initializer() With {Key.HttpClientInitializer = credential, Key.ApplicationName = "Calendar API Sample" })
    End Sub
End Class    

编译器说,有两个错误,关键。没有被正确识别,新的()不是vailig。

我希望有人可以帮我解决这个问题,或者在vb.net中有一个有效的样本v3

1 个答案:

答案 0 :(得分:0)

您应该查看Calendar Migration Guide。它应该作为迁移到v3的良好参考。它还包含各种语言的示例代码,包括.NET。

至于你的错误,New () {CalendarService.Scope.Calendar}, "user"对我来说似乎是一个问题。 Google日历的范围是:

https://www.googleapis.com/auth/calendar https://www.googleapis.com/auth/calendar.readonly

您可能需要参考文档here。根据您对应用程序的其他操作,您可能还需要其他范围。