У пользователя Microsoft graph есть свойство CreatedDateTime, но я не могу его использовать, потому что user.cs не имеет доступного свойства CreatedDateTime

#c# #microsoft-graph-api

#c# #microsoft-graph-api

Вопрос:

Я пытаюсь получить дату создания пользователя (CreatedDateTime) из пользователя Microsoft graph.

В Microsoft Graph Explorer вы можете найти свойство, и оно имеет значение. Но когда я пытаюсь заполнить свое свойство в своем коде c #, microsoft.graph.user не имеет никакого свойства createdDateTime , так подпадает ли оно под что-то другое или еще не реализовано?

 List<QueryOption> options = new List<QueryOption>
                    {
                         new QueryOption("$select", "id,userPrincipalName,createdDateTime")
                    };

var graphserviceClient = new GraphServiceClient(new DelegateAuthenticationProvider((requestMessage) => { requestMessage.Headers.Authorization = new AuthenticationHeaderValue("bearer", BearerToken.access_token); return Task.FromResult(0); }));

var AllUsers = await graphserviceClient.Users.Request(options).GetAsync();

foreach ( Microsoft.Graph.User FoundUser in AllUsers)
                {
                    DateTimeOffset? cD = FoundUser.???//createdDateTime 
                }
  

в graph
https://graph.microsoft.com/v1.0/me /?$select=имя_дисПлея,CreatedDateTime

Результат

 "displayName": "-K*** D****",
"createdDateTime": "2016-10-26T20:30:04Z"
  

ожидается:
Я просто не знаю, где получить значение этого свойства, которое хранится в graph

Ответ №1:

Это потому, что createdDateTime свойство доступно в AdditionalData словаре, который находится внутри одного из родительских классов Entity , от которого пользователь наследует.

User: DirectoryObject : Entity

 public IDictionary<string, object> AdditionalData { get; set; }
  

Вы найдете его там.

Комментарии:

1. спасибо, это где-нибудь задокументировано? Я не смог найти его ни в одной официальной документации