private Dictionary <string, string> GetUserReposQuery(ListUsersReposRequests query) { var direction = query.Direction.ToString().ToLower(); var type = query.Type.ToString().ToLower(); var sort = query.Sort == RepoSortColumn.FullName ? "full_name" : query.Sort.ToString().ToLower(); return(new Dictionary <string, string> { { "type", type }, { "direction", direction }, { "sort", sort }, { "per_page", query.PerPage.ToString() } }); }
public async Task <IActionResult> GetUserRepos([FromRoute] string username, [FromQuery] ListUsersReposRequests query) { var response = await _apiService.GetUserRepos(username, query); return(CreateResponse(response)); }
public async Task <Response <List <UserRepoResponse> > > GetUserRepos(string username, ListUsersReposRequests query) { var baseUri = $"{BaseUri}{string.Format(GitHubEndPoints.UserRepos, username)}"; var oauthUri = BuildOAuthUrl(baseUri); var fullUri = QueryHelpers.AddQueryString(oauthUri, GetUserReposQuery(query)); var response = await SendRequestAsync <List <UserRepoResponse>, List <UserRepoResponse> >(new Uri(fullUri), headers : HEADERS); return(response); }