使用图形 api 缺少响应创建新团队

时间:2021-07-20 07:06:20

标签: c# microsoft-graph-api microsoft-teams

我正在创建一个新的 MS-Teams 团队,其中包含用于图形 API 的 C# 库。 https://www.nuget.org/packages/Microsoft.Graph/3.35.0
https://docs.microsoft.com/en-us/graph/api/team-post?view=graph-rest-1.0&tabs=csharp

直到现在我使用“从组创建团队”版本,因为当我最初开始项目时不支持从模板直接创建团队。 由于这包括手动创建组的开销,并且更容易出错(mailNickname 冲突、计时),我想从链接移至新模板 api。

问题是我至少需要创建团队的 ID。

var newTeam = await graphClient.Teams
    .Request()
    .AddAsync(team);

执行文档中的代码只会返回 null。
由于这是一个长时间运行的操作,响应只包含一个位置,我可以在它完成后获取数据。

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: /teams('dbd8de4f-5d47-48da-87f1-594bed003375')/operations('3a6fdce1-c261-48bc-89de- 1cfef658c0d5')
Content-Location: /teams('dbd8de4f-5d47-48da-87f1-594bed003375')
Content-Length: 0

有没有办法在不完全放弃使用C#库的情况下访问响应数据?

1 个答案:

答案 0 :(得分:0)

感谢您的联系。要访问团队,请向团队端点发送 GET,并在 Location 中传递 id。您应该在两次检查之间等待 > 30 秒。您应该能够使用 SDK 发送此请求:

GraphServiceClient graphClient = new GraphServiceClient( authProvider );

var team = await graphClient.Teams["dbd8de4f-5d47-48da-87f1-594bed003375"]
    .Request()
    .GetAsync();

有关详细信息,请参阅 teamsAsyncOperation 文档。

告诉我这是否有帮助,如果您还有其他问题。

相关问题