private static async Task <BrottsplatsDataResult> GetPage(int page)
        {
            BrottsplatsDataResult root   = null;
            HttpClient            client = new HttpClient();

            client.BaseAddress = new Uri("http://brottsplatskartan.se");
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            try
            {
                HttpResponseMessage response = await client.GetAsync($"/api/eventsNearby?lat=62.390811&lng=17.306927");

                if (response.IsSuccessStatusCode)
                {
                    string data = await response.Content.ReadAsStringAsync();

                    root = JsonConvert.DeserializeObject <BrottsplatsDataResult>(data);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            return(root);
        }
 private static void MapPage(List <EventSearchDocument> documentList, BrottsplatsDataResult root)
 {
     foreach (var post in root.data)
     {
         documentList.Add(new EventSearchDocument()
         {
             Category        = "crime",
             Description     = post.description,
             EventDate       = post.pubdate_iso8601.ToString("yyyy-MM-dd HH:mm:ss"),
             EventDateOffset = post.pubdate_iso8601,
             EventId         = Guid.NewGuid().ToString(),
             Location        = GeographyPoint.Create(post.lat, post.lng),
             Title           = post.title_type,
             Level           = "0",
             DataType        = "api",
             DataSource      = "https://brottsplatskartan.se"
         });
     }
 }
        static public async Task <List <EventSearchDocument> > GetData()
        {
            bool finish = false;
            List <EventSearchDocument> documentList = new List <EventSearchDocument>();
            BrottsplatsDataResult      root         = null;
            int page = 0;

            while (!finish)
            {
                page++;
                root = await GetPage(page);

                MapPage(documentList, root);
                if (page == 1)
                {
                    finish = true;
                }
            }
            return(documentList);
        }