2016-04-15 2 views
0

Я использую следующий код, чтобы получить список всех пользователей GitHub Enterprise, а затем я пытаюсь приостановить их в AD. Функция Suspend работает, но свойство User.Suspended всегда возвращает false.User.Suspended всегда возвращает false в octokit.net

var searhRequest = new SearchUsersRequest("type:user&page="+pageNumber+"&page_size=100"); 
       githubUsers = await client.Search.SearchUsers(searhRequest); 

client.User.Administration.Suspend(userId); 

ответ

0

Да, я думаю, что проблема в том, что мы пытались бросить возвращаемое значение в качестве пользователя, когда в конечном итоге вызов, что это делает за кулисами не возвращает эти данные. Как работа, я только что вызвал метод get user, чтобы получить пользователей после того, как я собрал исходные результаты.

Это, вероятно, может быть сделано лучше, но вот то, что я прямо сейчас

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» (вытащил из моего локального экземпляра предприятия с использованием скрипач, а затем дезинфицированный)

{"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} 

 Смежные вопросы

  • Нет связанных вопросов^_^