// Magazine ids not unique across categories //dict of category along with list of magazine ids is formed static void Main(string[] args) { var subscribers = MagazineAPICalls.GetSubscribers(); var categoriesMagazines = MagazineAPICalls.GetCategoriesAndMagazines(); ListOfSubscribers resultset = new ListOfSubscribers(); //looping through subscribers foreach (var subscriber in subscribers.data) { var insertFlag = true; foreach (var dictObj in categoriesMagazines) { if (dictObj.Value.Intersect(subscriber.magazineIds).Count() == 0) { insertFlag = false; break; } else { // Magazine ids are not unique across categories subscriber.magazineIds.RemoveAll(x => dictObj.Value.Contains(x)); } } if (insertFlag) { resultset.subscribers.Add(subscriber.id); } } Console.WriteLine(MagazineAPICalls.IsAnswerCorrect(resultset)); }
public static bool IsAnswerCorrect(ListOfSubscribers lstSubscriberIds) { HttpClient client = new HttpClient(); var content = new StringContent(JsonConvert.SerializeObject(lstSubscriberIds), Encoding.UTF8, "application/json"); HttpResponseMessage response = client.PostAsync(baseUrl + "/api/answer/" + GetToken(), content).Result; if (response.IsSuccessStatusCode) { var result = JsonConvert.DeserializeObject <GetAnswerResponse>(response.Content.ReadAsStringAsync().Result); return(Convert.ToBoolean(result.success)); } return(false); }