Особенности разработки приложений, осуществляющих сетевой обмен для мобильной платформы Windows phone 8

Содержание

Слайд 2

Способы HTTP (страницы в формате RSS) JSON-строка

Способы

HTTP (страницы в формате RSS)
JSON-строка

Слайд 3

Информация из новостных лент private void LoadRSS() { WebClient client =

Информация из новостных лент

private void LoadRSS()  {       WebClient client = new WebClient();       client.DownloadStringCompleted +=   new DownloadStringCompletedEventHandler  (client_DownloadStringCompleted);        client.DownloadStringAsync(new Uri(RSS)); }
* RSS – ссылка на RSS-ленту новостей, например

http://blogs.msdn.com/b/rudevnews/rss.aspx
Слайд 4

Информация из новостных лент void client_DownloadStringCompleted (object sender, DownloadStringCompletedEventArgs e) {

Информация из новостных лент

void client_DownloadStringCompleted  (object sender, DownloadStringCompletedEventArgs e)  {       if (e.Error == null)       {             RSSString = e.Result;       }   }

Слайд 5

Информация из новостных лент public class PostMessage { public string pubDate

Информация из новостных лент

            
public class PostMessage      {          public string pubDate { get; set; }          public string title { get; set; }          public string link { get; set; }      }

Слайд 6

Информация из новостных лент XElement twitterElements = XElement.Parse(e.Result); var postList =

Информация из новостных лент

XElement twitterElements = XElement.Parse(e.Result);    var postList =     from tweet in twitterElements.Descendants("item")   select new PostMessage   {      title = tweet.Element("title").Value,     pubDate = tweet.Element("pubDate").Value 
link = tweet.Element("link").Value    }; 

Слайд 7

Информация из новостных лент private void RssList_SelectionChanged (object sender, SelectionChangedEventArgs e)

Информация из новостных лент

private void RssList_SelectionChanged  (object sender, SelectionChangedEventArgs e)   {     WebBrowserTask webTask = new WebBrowserTask();     webTask.Uri = new Uri(((PostMessage)
(RssList.SelectedItem)).link);     webTask.Show();          }

Слайд 8

JSON-строка JSON — текстовый формат обмена данными, основанный на JavaScript. {"groups":[{"group_id":"476","group_name":"3\u0411\u041b\u0431-1"},

JSON-строка

JSON — текстовый формат обмена данными, основанный на JavaScript.
{"groups":[{"group_id":"476","group_name":"3\u0411\u041b\u0431-1"},
{"group_id":"477","group_name":"3\u041f\u041f-1"},
{"group_id":"478","group_name":"3\u0420\u041e\u0431-1"},
{"group_id":"479","group_name":"3\u041c\u041b\u043c-1"},
{"group_id":"480","group_name":"3\u0414\u0410\u0431-1"},
{"group_id":"481","group_name":"2\u0411\u041b\u0431-1"},
{"group_id":"482","group_name":"2\u041a\u041b\u0431-1"},
{"group_id":"483","group_name":"2\u041f\u041f-1"},
{"group_id":"484","group_name":"1\u0411\u041b\u0431-1"},
{"group_id":"485","group_name":"1\u0420\u041e\u0431-1"},
{"group_id":"486","group_name":"0\u041a\u041b-1"},
{"group_id":"487","group_name":"1\u041f\u041f-1"},
{"group_id":"488","group_name":"0\u041f\u041f-1"},
{"group_id":"489","group_name":"9\u041f\u041f-1"}]}

Слайд 9

JSON-строка public void Download () { WebClient webClient = new WebClient();

JSON-строка

public void Download ()
{
WebClient webClient = new WebClient();
webClient.DownloadStringCompleted += new
DownloadStringCompletedEventHandler

(webClient_DownloadStringCompleted);
webClient.DownloadStringAsync(new
Uri("http://hostmobi1.nichost.ru/get_all_groups.php"));
}
Слайд 10

JSON-строка public class Group { public string group_id { get; set;

JSON-строка

public class Group
{
public string group_id { get; set; }
public string group_name

{ get; set; }
}
public class RootObject
{
public List groups { get; set; }
}
Слайд 11

JSON-строка var rootObject = JsonConvert.DeserializeObject (e.Result.ReadToEnd()); foreach (var Groups in rootObject.groups)

JSON-строка

var rootObject = JsonConvert.DeserializeObject(e.Result.ReadToEnd());
foreach (var Groups in rootObject.groups)
{
id_group = Groups.group_id;
name =

Groups.group_name;
}
Следует помнить, что данные представлены только в текстовом формате, и, если вам нужны численные значения, которые есть в строке – вам придется перевести текстовые символы чисел в численные значения.
Слайд 12

JSON-строка В результате мы получили полный список групп, который затем отсортировали по курсу, и по алфавиту.

JSON-строка

В результате мы получили полный список групп, который затем отсортировали по

курсу, и по алфавиту.