Могу ли я добавить несколько событий в календарь? - PullRequest
0 голосов
/ 26 марта 2020

Я хотел бы добавить несколько событий в календарь. Сегодня я перебираю длинный список объектов Event, добавляя по одному элементу за раз в календарь. Было бы неплохо, если бы был способ добавить весь список в один запрос?

foreach(var newEvent in myEventList)
{
     await graphClient.Me.Calendars[id].Events
        .Request()
        .AddAsync(newEvent);
}

1 Ответ

0 голосов
/ 26 марта 2020

Вы можете использовать пакет для этого. https://docs.microsoft.com/en-us/graph/json-batching.

Используя прямой REST, вы можете использовать

POST https://graph.microsoft.com/v1.0/$batch
Accept: application/json
Content-Type: application/json
{
  "requests": [
    {
      "id": "1",
      "method": "GET",
      "url": "/me/drive/root:/{file}:/content"
    },
    {
      "id": "2",
      "method": "GET",
      "url": "/me/planner/tasks"
    },
    {
      "id": "3",
      "method": "GET",
      "url": "/groups/{id}/events"
    },
    {
      "id": "4",
      "url": "/me",
      "method": "PATCH",
      "body": {
        "city" : "Redmond"
      },
      "headers": {
        "Content-Type": "application/json"
      }
    }
  ]
}

В SDK это тоже теперь очень легко поддерживается с использованием возможностей BatchRequestContent и AddBatchRequestStep.

Я продемонстрировал это на Ignite в ноябре на отметке 28 минут. https://myignite.techcommunity.microsoft.com/sessions/82963?source=sessions

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...