是否可以将段附加到 MS Graph GraphServiceClient 请求并获取该资源?
场景:我想获取一个组的根站点(更具体地说是它的 weburl 属性)
https://graph.microsoft.com/v1.0/groups/{group-id}/sites/root
但不能使用 QueryBuilder 附加 /root 段,并且不允许枚举站点并引发异常
var task = graphClient.Groups[group.Id].Sites.Request().GetAsync() // exception
我可以得到请求的字符串
var url = graphClient.Groups[group.Id].Sites.Request().AppendSegmentToRequestUrl("root")
但是我需要一种方法来提供完整的 Graph Url,例如:
graphClient.MakeRequest(url).GetAsync()
我知道我可以使用 HttpClient 类,但这会引入不同的模式来获取图形资源,我想避免这种情况。
编辑 - 解决方案
似乎您必须使用 Microsoft.Graph 命名空间下可用的 RequestBuilders,直到找到与您的请求类型匹配的请求生成器,所有其他请求都返回 null。
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();