使用Delta查询时,扩展属性似乎不起作用。它适用于常规用户查询。
这是Microsoft Graph API的限制吗?
var usersInfo = graphServiceClientWithApplicationPermission.Users.Delta().Request().Expand("MemberOf").GetAsync();
// Add inital request users
foreach (var userInfo in usersInfo)
{
// Member info doesn't seem to be expanded even if $expand=MemberOf is sent
if (userInfo.MemberOf == null)
{
userInfo.MemberOf = await applicationPermissionsClient.Users[userInfo.Id].MemberOf.Request().GetAsync();
}
// MemberOf is now populated ??
}
答案 0 :(得分:2)
似乎这是Microsoft Graph的另一个限制,不受支持。
可选查询参数
如果客户端使用查询参数,则必须在中指定 初始请求。 Microsoft Graph自动编码指定的 参数提供给响应中提供的nextLink或deltaLink。该 调用应用程序只需要指定他们想要的查询 参数一旦提前。 Microsoft Graph添加指定的参数 自动为所有后续请求。对于用户和组,t 以下是使用某些查询参数的限制:
如果使用$ select查询参数,则参数表示该参数 客户更喜欢只追踪属性的变化或 $ select语句中指定的关系。如果发生变化 到未选择的属性,即该资源 属性更改后不会出现在delta响应中 后续请求。不支持$ expand。
对于用户和群组beta(预览)API,范围过滤器允许您 跟踪objectId对一个或多个特定用户或组的更改。对于 例如,以下请求: https://graph.microsoft.com/beta/groups/delta/?$ filter = id eq ' 477e9fc6-5de7-4406-bb2a-7e5c83c9ae5f'或id eq ' 004d6a07-fe70-4b92-ADD5-e6e37b8acd8e'返回组的更改 匹配查询过滤器中指定的ID。
https://developer.microsoft.com/en-us/graph/docs/concepts/delta_query_overview