protected void Page_Load(object sender, EventArgs e)
    {
        string dateListFilePath = Server.MapPath("~/App_Data/dates.txt");

        if (!String.Empty.Equals(dateListFilePath))
        {
            if (File.Exists(dateListFilePath))
            {
                string[] fileLines = File.ReadAllLines(dateListFilePath);
                NasaApiGateway.NasaApodConsumer consumer = new NasaApiGateway.NasaApodConsumer();
                Apod apod;

                foreach (string line in fileLines)
                {
                    DateTime date;
                    if (DateTime.TryParse(line, out date))
                    {
                    }
                    else
                    {
                        try
                        {
                            CultureInfo provider = CultureInfo.InvariantCulture;
                            date = DateTime.ParseExact(line, "MM/dd/yy", provider);
                        }
                        catch
                        {
                            continue;
                        }
                    }
                    consumer.RetrieveImageToken(date, out apod);

                    TableRow  row      = new TableRow();
                    TableCell dateCell = new TableCell();
                    dateCell.Text = line;
                    row.Cells.Add(dateCell);

                    TableCell imageCell = new TableCell();
                    Image     image     = new Image();
                    image.ImageUrl = apod.url;
                    imageCell.Controls.Add(image);
                    row.Cells.Add(imageCell);

                    Images.Rows.Add(row);
                }
            }
        }
    }
        private static void DownloadImage(string api, DateTime date, string folder)
        {
            if ("APOD".Equals(api.ToUpper()))
            {
                NasaApiGateway.NasaApodConsumer consumer = new NasaApiGateway.NasaApodConsumer();
                byte[] imageData;
                Apod   apod;

                consumer.RetrieveImageContent(date, out apod, out imageData);

                Stream     stream     = new MemoryStream(imageData);
                Image      image      = Image.FromStream(stream);
                FileStream fileStream = new FileStream(Path.Combine(folder, String.Format("APOD-Image-{0}.jpg", apod.date)), FileMode.Create);

                Console.WriteLine(String.Format("\nDownloading Image using:\nAPI: {0}\nFor Date: {1}\nIn Folder: {2}", api, date.ToString("yyyy-MM-dd"), folder));
                image.Save(fileStream, ImageFormat.Jpeg);
            }
            else
            {
                Console.WriteLine("\nERROR: API \"{0}\" is not supported.", api);
            }
        }