C# Google Calendar API - 凭据/Microsoft 帐户

问题描述

嗯,我的问题是我必须在我的个人谷歌帐户中注册日历,这不是问题,但是...

创建新活动时,我的个人电子邮件显示为组织者,并将该活动也放入我的个人日历中。

在公司中,我们使用最好用的 Microsoft 365 帐户。我的意思是,有没有办法解决这个问题?

解决这个问题的最好方法是,当我创建活动时,我给它一个字符串(这是一个微软电子邮件),它应该是组织者(尽管它不是谷歌帐户)。主要问题是我必须在应用程序中预先注册ClientID才能运行整个过程。我现在在谷歌帐户中使用以下内容

public static CalendarService getCalendarService
{
   get
   {
      var credential = GoogleWebAuthorizationbroker.AuthorizeAsync(new ClientSecrets { ClientId = clientId,ClientSecret = clientSecret },new[] { CalendarService.Scope.Calendar },"user",CancellationToken.None).Result;
      return new CalendarService(new BaseClientService.Initializer { HttpClientinitializer = credential,ApplicationName = "Deadline calendar" });
    }
}

解决方法

您遇到的问题是事件的所有者是创建它的人。创建它的人是当前经过身份验证的用户。基本上是您登录并同意访问并运行您的应用程序的帐户。

您需要将 Microsoft 365 电子邮件帐户转换为 Google 帐户,然后使用该帐户登录,使用该帐户创建事件,然后它就会成为所有者。