Microsoft.Graph.Group 缺少 resourceProvisioningOptions 属性

Microsoft.Graph.Group missing resourceProvisioningOptions atrribute

我正在尝试使用 .NET SDK 通过显示名称来识别 Teams。我在创建生产应用程序时并没有故意使用 beta API。为了识别一个团队,我想使用 resourceProvisioningOptions 因为它包含“团队”的值。

在 postman 中,我可以通过

简单地做到这一点
https://graph.microsoft.com/v1.0/groups?$filter=startswith(displayName,'My Team') 

在返回的属性中我看到了

"resourceProvisioningOptions": [
   "Team"
]

我用来做同样事情的 C# 是

var request = await graphClient.Groups
    .Request()
    .Header("ConsistencyLevel", "eventual")
    .Filter("startswith(displayName,'My Team')")
    .Select("id,displayName,description,resourceProvisoiningOptions")
    .GetAsync();

然后(为了测试)

foreach (var item in request) {
    Console.WriteLine(item.id);
    Console.WriteLine(item.resourceProvisioningOptions);
}

但是 Microsoft.Graph.Group 类型似乎没有 resourceProvisioningOptions 属性。所以我想知道如何正确识别团队组。

我知道使用 Beta API 我可以使用 resouceProvisioningOptions/Any(等)过滤我们的非团队组,但正如我提到的,我不会使用它。

这是我的第一个 post,在此先感谢您的帮助!

是的,正如你所说,即使我在尝试查询组列表时也看不到 resourceProvisioningOptions。经过一些研究,我发现在调试时可以在 AdditionalData 属性 中找到一些属性,您可以在 属性.

中看到 resourceProvisioningOptions

您可以使用以下代码枚举该数据。

IGraphServiceGroupsCollectionPage m = await GraphHelper.getGroups();
foreach (var data in m)
{
        Console.WriteLine(data.AdditionalData["resourceProvisioningOptions"] + " " + data.displayName);
}

每个组都有 AdditionalData 并使用它来获取您缺少的属性。