Можно ли добавить сегмент в запрос MS Graph GraphServiceClient и получить этот ресурс?
Сценарий: я хочу получить корневой сайт группы (точнее, его свойство weburl)
https://graph.microsoft.com/v1.0/groups/{group-id}/sites/root
но невозможно добавить / корневой сегмент с QueryBuilder, и перечисление сайтов не допускается и выдает исключение
var task = graphClient.Groups[group.Id].Sites.Request().GetAsync() // exception
Я могу получить строку для запроса
var url = graphClient.Groups[group.Id].Sites.Request().AppendSegmentToRequestUrl("root")
Но тогда мне понадобится метод, для которого я могу предоставить полный URL-адрес графика, например:
graphClient.MakeRequest(url).GetAsync()
Я знаю, что мог бы использовать класс HttpClient, но это привело бы к другому шаблону. чтобы получить ресурсы Graph, и я бы хотел этого избежать.
Правка - Решение
Похоже, что вам нужно поиграть с RequestBuilders, доступными в Microsoft.Graphпространства имен, пока вы не найдете тот, который соответствует вашему запросу, все остальные возвращают ноль.
var requestBuilder = client.Groups["guid-of-group"].Sites;
var url = requestBuilder.AppendSegmentToRequestUrl("root");
GroupRequestBuilder builder = new GroupRequestBuilder(url, client);
var result = await builder.Request().GetAsync();