如何通过C# REST API从TFS单次查询多个DisplayName对应的用户身份
TFS C# REST API 单次调用批量查询用户身份解决方案
你使用的是ReadIdentitiesAsync的单搜索值重载,只需切换SDK提供的多搜索值重载即可实现单次拉取多个对应用户:
实现步骤
- 确认你使用的TFS/Azure DevOps配套SDK版本对应TFS 2017及以上,该版本开始提供批量查询重载
- 直接将完整的显示名列表作为参数传入
ReadIdentitiesAsync即可
代码示例
// 你的显示名列表,示例定义如下 List<string> displayNames = new List<string> {"用户A", "用户B", "用户C"}; // 异步调用写法(推荐) IdentitiesCollection identities = await identityHttpClient.ReadIdentitiesAsync( IdentitySearchFilter.DisplayName, displayNames ); // 同步调用写法(对应你原有写法风格) // IdentitiesCollection identities = identityHttpClient.ReadIdentitiesAsync(IdentitySearchFilter.DisplayName, displayNames).Result;
注意事项
单次批量查询的显示名数量建议控制在100个以内,超出该数量建议拆分多批次调用,避免接口因请求参数过长报错。
返回结果中仅包含匹配成功的用户身份,若需校验缺失的显示名,可自行将输入列表和返回结果的DisplayName字段做对比。
内容的提问来源于stack exchange,提问作者Arsalan Younus
相关产品推荐
相关产品推荐

