From c3a9109a7e337f17a5558697b877efa33540885f Mon Sep 17 00:00:00 2001 From: stubbfel Date: Mon, 10 Jun 2013 11:27:02 +0200 Subject: [PATCH] add RestApi httpget --- CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj | 1 + CampusAppWP8/CampusAppWP8/Utility/RestApi.cs | 42 +++++++++++++++++++ CampusAppWP8/CampusAppWP8/utility/Feed.cs | 8 ++-- 3 files changed, 47 insertions(+), 4 deletions(-) create mode 100644 CampusAppWP8/CampusAppWP8/Utility/RestApi.cs diff --git a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj index 8c40aead..6dd20d51 100644 --- a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj +++ b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj @@ -147,6 +147,7 @@ + diff --git a/CampusAppWP8/CampusAppWP8/Utility/RestApi.cs b/CampusAppWP8/CampusAppWP8/Utility/RestApi.cs new file mode 100644 index 00000000..af5bd7f9 --- /dev/null +++ b/CampusAppWP8/CampusAppWP8/Utility/RestApi.cs @@ -0,0 +1,42 @@ + +//----------------------------------------------------------------------- +// +// Company copyright tag. +// +// stubbfel +// 03.05.2013 +//----------------------------------------------------------------------using System; + +namespace CampusAppWP8.Utility +{ + using System; + using System.Collections.Generic; + using System.Linq; + using System.Net; + using System.Text; + using System.Threading.Tasks; + + public class RestApi + { + #region Members + WebClient client; + #endregion + + #region Constructor + public RestApi() + { + client = new WebClient(); + } + #endregion + + #region Methods + #region public + public void HttpGet(Uri url, Action action) + { + client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(action); + client.DownloadStringAsync(url); + } + #endregion + #endregion + } +} diff --git a/CampusAppWP8/CampusAppWP8/utility/Feed.cs b/CampusAppWP8/CampusAppWP8/utility/Feed.cs index bb8c38c4..3a69c342 100644 --- a/CampusAppWP8/CampusAppWP8/utility/Feed.cs +++ b/CampusAppWP8/CampusAppWP8/utility/Feed.cs @@ -14,7 +14,7 @@ namespace CampusAppWP8.Utility /// This a abstract Class for reading, store and deserialization Feeds from the Web. /// /// Type for model of the feed - public abstract class Feed + public abstract class Feed:RestApi { #region Member @@ -119,6 +119,8 @@ namespace CampusAppWP8.Utility /// public void LoadFeed() { + this.DownloadFeed(); + return; if (this.IsModelUpToDate()) { return; @@ -174,9 +176,7 @@ namespace CampusAppWP8.Utility /// private void DownloadFeed() { - WebClient client = new WebClient(); - client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(this.DownloadCompleted); - client.DownloadStringAsync(this.FeedURL); + this.HttpGet(this.FeedURL, this.DownloadCompleted); } ///