wp7调用webservices返回dataset解决方法

   这是是第一次在园子里写东西,写的不好还望大家见谅哈。今天要写的内容是wp7解析dataset的方法,在wp7中没有dataset非常的不方便,这是大家伙都知道的事情,但是在调用webservices的时候常常返回的结果为dataset,我们要想办法解决。下面就是一个小小的例子,希望能给大家伙带来收获。

 

我们先看看dataset中返回来的数据:

View Code
 1 <TimeTable diffgr:id="TimeTable1" msdata:rowOrder="0" diffgr:hasChanges="inserted">
2 <TrainCode>1161</TrainCode>
3 <FirstStation>济南</FirstStation>
4 <LastStation>西安</LastStation>
5 <StartStation>济南</StartStation>
6 <StartTime>11:50:00</StartTime>
7 <ArriveStation>菏泽</ArriveStation>
8 <ArriveTime>16:11:00</ArriveTime>
9 <KM>295</KM>
10 <UseDate>04:21</UseDate>
11 </TimeTable>
12 <TimeTable diffgr:id="TimeTable2" msdata:rowOrder="1" diffgr:hasChanges="inserted">
13 <TrainCode>1281</TrainCode>
14 <FirstStation>济南</FirstStation>
15 <LastStation>深圳西</LastStation>
16 <StartStation>济南</StartStation>
17 <StartTime>10:54:00</StartTime>
18 <ArriveStation>菏泽</ArriveStation>
19 <ArriveTime>15:21:00</ArriveTime>
20 <KM>295</KM>
21 <UseDate>04:27</UseDate>
22 </TimeTable>

在返回来的数据中,每个节点都是由TimeTable包裹着的,下面我们就来解析它。

 

C#代码
 1 TrainReference.ArrayOfXElement element = e.Result;
2 var results = from item in element.Nodes[0].Descendants("TimeTable")
3 select new station
4 {
5 TrainCode = item.Element("TrainCode").Value,
6 FirstStation = item.Element("FirstStation").Value,
7 LastStation = item.Element("LastStation").Value,
8 StartStation = item.Element("StartStation").Value,
9 StartTime = item.Element("StartTime").Value,
10 ArriveStation = item.Element("ArriveStation").Value,
11 ArriveTime = item.Element("ArriveTime").Value,
12 KM = Convert.ToInt16(item.Element("KM").Value),
13 UserDate = item.Element("UseDate").Value
14 };
15 foreach (var item in results)
16 {
17 station st = new station();
18 st.TrainCode = item.TrainCode;
19 st.FirstStation = item.FirstStation;
20 st.LastStation = item.LastStation;
21 st.StartStation = item.StartStation;
22 st.StartTime = item.StartTime;
23 st.ArriveStation = item.ArriveStation;
24 st.ArriveTime = item.ArriveTime;
25 st.KM = item.KM;
26 st.UserDate = item.UserDate;
27 collection.Add(st);
28 }


这样我们就可以解决wp7种dataset的问题了。

posted @ 2012-03-21 09:56  田念收  阅读(453)  评论(0编辑  收藏  举报