首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在octokit.net中,User.Suspended始终返回false

在octokit.net中,User.Suspended始终返回false
EN

Stack Overflow用户
提问于 2016-04-16 00:01:31
回答 1查看 330关注 0票数 0

我使用以下代码来获取所有GitHub企业用户的列表,然后尝试挂起那些不再在AD中的用户。Suspend函数有效,但User.Suspended属性始终返回false。

代码语言:javascript
复制
var searhRequest = new SearchUsersRequest("type:user&page="+pageNumber+"&page_size=100");
                githubUsers = await client.Search.SearchUsers(searhRequest);   

 client.User.Administration.Suspend(userId);
EN

回答 1

Stack Overflow用户

发布于 2016-06-25 05:38:12

是的,我认为问题是我们试图将返回值转换为用户,而最终在幕后进行的调用没有返回该数据。作为一种变通方法,我在对原始结果进行四舍五入后,调用get user方法来获取用户。

它可能可以做得更好,但这是我现在所拥有的

代码语言:javascript
复制
Task<SearchUsersResult> task;
List<User> users = new List<User>();
int page = 1;

do
{
  task = github.Search.SearchUsers(new SearchUsersRequest("type:user&repos:>=0") { Page = page, PerPage = 500 });
  task.Wait();

  users.AddRange(task.Result.Items.ToList<User>());
  page++;
}
while (users.Count < task.Result.TotalCount);

// Get all users by login (this calls the api once for every user you have)
var tasks = users.Select(u => github.User.Get(u.Login));

// Get all unsuspended users
var activeUsers = Task.WhenAll<User>(tasks).Result.Where<User>(u => !u.Suspended).ToList();

注意,在调用的结果中不包括"isSuspended“数据(使用fiddler从我本地的企业实例中拉出,然后进行清理)

代码语言:javascript
复制
{"login":"User1"
"id":45
"avatar_url":"http://github.com/avatars/u/45?"
"gravatar_id":""
"url":"http://github.com/api/v3/users/User1"
"html_url":"http://github.com/User1"
"followers_url":"http://github.com/api/v3/users/User1/followers"
"following_url":"http://github.com/api/v3/users/User1/following{/other_user}"
"gists_url":"http://github.com/api/v3/users/User1/gists{/gist_id}"
"starred_url":"http://github.com/api/v3/users/User1/starred{/owner}{/repo}"
"subscriptions_url":"http://github.com/api/v3/users/User1/subscriptions"
"organizations_url":"http://github.com/api/v3/users/User1/orgs"
"repos_url":"http://github.com/api/v3/users/User1/repos"
"events_url":"http://github.com/api/v3/users/User1/events{/privacy}"
"received_events_url":"http://github.com/api/v3/users/User1/received_events"
"type":"User"
"site_admin":false
"ldap_dn":"CN=User1
OU=CompanyDEVUsers
OU=Users
OU=Company
DC=Company
DC=com"
"score":1.0}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36651872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档