static void RequestBingImage(string url, BingImage image) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); HttpWebResponse response = null; try { response = (HttpWebResponse)request.GetResponse(); if (response.StatusCode == HttpStatusCode.NotFound) { throw new ApplicationException("url未找到图片"); } image.Image = new Bitmap(response.GetResponseStream()); } catch { image = null; } finally { if (response != null) { response.Close(); } } }
public static BingImage CreateBingImage(XElement image) { BingImage bingImg = new BingImage(); // 获取图片的基本属性 bingImg.StartDate = DateTime.ParseExact(image.Element("startdate").Value, "yyyyMMdd", null); bingImg.FullStartDate = DateTime.ParseExact(image.Element("fullstartdate").Value, "yyyyMMddHHmm", null); bingImg.EndDate = DateTime.ParseExact(image.Element("enddate").Value, "yyyyMMdd", null); bingImg.ImageUrl = image.Element("url").Value.Trim('/'); bingImg.UrlBase = image.Element("urlBase").Value.Trim('/'); bingImg.Copyright = image.Element("copyright").Value; bingImg.Drk = image.Element("drk").Value; bingImg.Top = image.Element("top").Value; bingImg.Bot = image.Element("bot").Value; // 获取图片热点信息 XElement element = image.Element("hotspots"); if (element != null) { var hotSports = element.Elements("hotspot"); foreach (var hotSport in hotSports) { bingImg.Hotspots.Add(CreateHotspot(hotSport)); } } // 获取图片相关信息 element = image.Element("messages"); if (element != null) { var messages = element.Elements("message"); foreach (var message in messages) { bingImg.Messages.Add(CreateMessage(message)); } } return(bingImg); }