MS Graph Delta用户API返回数据DTO建模:重复扩展字段问题咨询
关于Microsoft Graph Users Delta接口重复扩展字段的问题解答
一、重复字段产生的原因
那些形如extension_2d3asdfasdfasdf777b68da_extensionAttribute1的字段是Azure AD目录扩展,和onPremisesExtensionAttributes内字段重复的核心原因:
- 当通过Azure AD Connect将本地Active Directory的
extensionAttribute1/5等扩展属性同步到Azure AD时,Azure AD会自动为这些同步过来的本地扩展属性生成对应的目录扩展字段(带唯一租户ID前缀)。 - 同一份同步数据会以两种形式返回:一种是规整到
onPremisesExtensionAttributes对象内的标准化结构,另一种是平级的目录扩展字段,目的是兼容依赖目录扩展的旧有应用场景。
二、如何修改返回结果,只保留onPremisesExtensionAttributes内的数据
可以通过Graph API的$select参数精确指定返回字段,过滤掉平级的目录扩展字段:
- 在请求URL中添加
$select参数,明确列出需要的字段(必须包含delta接口跟踪所需的基础字段,比如id,否则会影响delta同步的续期) - 示例请求URL:
https://graph.microsoft.com/beta/users/delta?$select=id,displayName,onPremisesExtensionAttributes
这样返回的JSON结果只会包含你指定的字段,带唯一ID的平级扩展字段会被自动排除,你可以基于这个精简结果创建干净的DTO类。
内容的提问来源于stack exchange,提问作者dot
相关产品推荐
相关产品推荐

