1

我有我认为是谷歌日历的简单要求,但对于我的生活,我无法在网上找到任何东西来帮助我实现它。

我想做的就是在网页上显示我的 Google 帐户(不是最终用户)中的一个日历,然后允许他们创建活动/预订。不确定这是否可以完成,但对我来说似乎是一个非常简单的功能。

从我的在线阅读看来,我不需要使用 Oauth2,而是创建一个日历服务并以这种方式连接。这是我目前拥有的代码,它可以毫无怨言地创建服务,但我不知道如何从中呈现日历,并且似乎无法在任何地方找到任何体面的示例。

private const string SERVICE_ACCOUNT_EMAIL = "DetailsRemoved";
private const string SERVICE_ACCOUNT_PKCS12_FILE_PATH = @"DetailsRemoved";

protected void Page_Load(object sender, EventArgs e)
{
    CalendarService x = BuildService();
    //Render the Calendar somehow
}

/// <summary>
/// Build a Calendar service object authorized with the service account.
/// </summary>
/// <returns>Calendar service object.</returns>
static CalendarService BuildService()
{
    X509Certificate2 certificate =
        new X509Certificate2(HttpContext.Current.Server.MapPath(SERVICE_ACCOUNT_PKCS12_FILE_PATH),
                             "notasecret",
                             X509KeyStorageFlags.Exportable);

    var provider = new AssertionFlowClient(GoogleAuthenticationServer.Description, certificate)
    {
        ServiceAccountId = SERVICE_ACCOUNT_EMAIL,
        Scope = CalendarService.Scopes.Calendar.GetStringValue(),
    };
    var auth = new OAuth2Authenticator<AssertionFlowClient>(provider, AssertionFlowClient.GetState);

    return new CalendarService(new BaseClientService.Initializer()
    {
        Authenticator = auth
    });
}

任何帮助,将不胜感激

谢谢

4

0 回答 0