Microsoft Graph:无法更新事件的开始日期或结束日期

问题描述

我正在使用Microsoft Graph .NET SDK更新Outlook事件。以下代码成功更新了事件的SubjectBody属性。但是,当我尝试更新事件的Start和/或End日期(属于dateTimeTimeZone类型)时,会显示以下错误:

问题:错误的可能原因是什么,我们该如何解决?请注意,该活动的有效本地开始日期和结束日期分别为8/21/2020 11:00AM8/21/2020 11:30AM。实际上,在调试模式下,VS2019显示为:Start.get returns null

错误的屏幕截图

enter image description here

代码

  1. 如果我取消注释下面的行Start = { DateTime = "2020-08-20T08:30:00.0000000",TimeZone = "UTC" },则会发生上述错误。
  2. authProvider"{id}"变量的值与错误无关,因为具有真实值的代码在没有代码行Start =....的情况下可以正常工作。

...

GraphServiceClient graphClient = new GraphServiceClient( authProvider );

var @event = new Event
{
    Subject = "Test subject",Body= new ItemBody { Content = "Test body content"}
    //Start = { DateTime = "2020-08-20T08:30:00.0000000",TimeZone = "UTC" }
};

await graphClient.Me.Events["{id}"]
    .Request()
    .UpdateAsync(@event);

解决方法

由于属性中使用了对象类型,因此您需要这样的东西

            var @event = new Event
        {
            Subject = "Test subject",Body = new ItemBody { Content = "Test body content" },Start = new DateTimeTimeZone {  DateTime = "2020-08-20T08:30:00.0000000",TimeZone = "UTC" } 
        };
,

您需要以以下格式添加日期。希望它能解决您的问题。

var @event = new Event
    {
        Subject = "Test subject",TimeZone = "GMT Standard Time" } 
    };

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...