private Evbpc.Framework.Integrations.StackExchange.API.Models.User GetUserInformation(string accessToken) { var config = StackExchangeApiConfiguration.Load(); var apiConfig = new Evbpc.Framework.Integrations.StackExchange.API.Configuration() { Key = config.Key, AccessToken = accessToken }; var request = new Evbpc.Framework.Integrations.StackExchange.API.Requests.MeAssociatedRequest() { PageSize = 100, Types = Evbpc.Framework.Integrations.StackExchange.API.Requests.MeAssociatedRequest.AccountTypes.MainSite }; var handler = new Evbpc.Framework.Integrations.StackExchange.API.Handler(apiConfig); var response = handler.SubmitRequest(request); var myUsers = handler.ProcessResponse <Evbpc.Framework.Integrations.StackExchange.API.Models.NetworkUser>(response).Items; var meRequest = new Evbpc.Framework.Integrations.StackExchange.API.Requests.MeRequest() { Site = new Uri(myUsers[0].SiteUrl).Host }; var user = handler.ProcessResponse <Evbpc.Framework.Integrations.StackExchange.API.Models.User>(handler.SubmitRequest(meRequest)).Items[0]; user.Reputation = myUsers.Sum(x => x.Reputation); return(user); }
private List <SEAPI.Models.NetworkUser> GetAssociatedUsers(ApplicationUser user) { var apiConfig = StackExchangeApiConfiguration.Load(); var config = new SEAPI.Configuration() { AccessToken = user.AccessToken, Key = apiConfig.Key }; var request = new SEAPI.Requests.MeAssociatedRequest() { PageSize = 100, Types = SEAPI.Requests.MeAssociatedRequest.AccountTypes.MainSite }; var handler = new SEAPI.Handler(config); var response = handler.ProcessResponse <SEAPI.Models.NetworkUser>(handler.SubmitRequest(request)); return(response.Items); }