public async Task UpdateDeal()
 {
     if (_isDealUpdated)
     {
         return;
     }
     try
     {
         _deal = await DataLayer.GetDealAsync(BingId);
     }
     catch (NullReferenceException ex)
     {
         Debug.WriteLine("Gettting Deal Exception: " + ex.Message);
     }
     if (_deal != null)
     {
         _isDealUpdated = true;
     }
 }
 public Album()
 {
     _isDealUpdated = false;
     _deal = null;
 }
        private static async Task<Deal> CreateDealFromEdsOfferInstance(EdsOfferInstance edsOfferInstance)
        {
            if (edsOfferInstance == null)
            {
                return new Deal()
                {
                    OfferEndDate = DateTime.Now,
                    OfferStartDate = DateTime.Now,
                    Price = "-99"
                };
            }
            var deal = new Deal()
            {
                OfferEndDate = Convert.ToDateTime(edsOfferInstance.EndDate),
                OfferStartDate = Convert.ToDateTime(edsOfferInstance.StartDate)
                    
            };

            if (edsOfferInstance.EndDate == "" )
            {
                deal.OfferEndDate = DateTime.Now;
                Debug.WriteLine("No Deal End Dates");
            }

            if (edsOfferInstance.StartDate == "")
            {
                deal.OfferStartDate = DateTime.Now;
                Debug.WriteLine("No Deal Start Dates");
            }

            if (edsOfferInstance.OfferDisplay != "")
            {
                var offerDisplay = await GetPriceFromString(edsOfferInstance.OfferDisplay);
                deal.CurrencyCode = offerDisplay.currencyCode;
                deal.Price = offerDisplay.displayPrice;
            }
            else
            {
                deal.Price = "-99";
                Debug.WriteLine("NO Offer detail!!!");
            }
            return deal;
        }