欢迎来到飞鸟慕鱼博客,开始您的技术之旅!
当前位置: 首页知识笔记正文

Title: windows phone 7 calls network service and returns data set.

墨初 知识笔记 136阅读

调用网络服务并返回数据集。因为WP7不支持数据集,所以按照可扩展标记语言处理省名:城市名:地址:用户ID:并返回XML: ThisXML .数据集xmlns=' ' xs : schemax mlns=' ' xmlns : xs=' ' xmlns : ms data=' urn : schemas-Microsoft-com : XML-ms data ' id=' new dataset ' nbsp .xs :元素名称=' new dataset ' ms data : is dataset=' true ' ms data : usecurrentlocale=' true ' xs :复杂类型xs : choiceminoccurs=' 0 ' max occurs=' unbounded ' xs :元素名称=' ZipInfo ' xs :复杂类型xs 3360序列e xs :元素名称

a(0, 0, 255, 1)">="PROVINCE" type="xs:string" minOccurs="0"/>
        <xs:element name="CITY" type="xs:string" minOccurs="0"/>
        <xs:element name="ADDRESS" type="xs:string" minOccurs="0"/>
        <xs:element name="ZIP" type="xs:string" minOccurs="0"/>
        </xs:sequence>
        </xs:complexType>
        </xs:element>
        </xs:choice>
        </xs:complexType>
        </xs:element>
        </xs:schema>
        <diffgr:diffgram xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:diffgr="urn:schemas-microsoft-com:xml-diffgram-v1">
        <NewDataSet xmlns="">
        <ZipInfo diffgr:id="ZipInfo1" msdata:rowOrder="0">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>城子河及所属各街道</ADDRESS>
        <ZIP>158100</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo2" msdata:rowOrder="1">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>滴道区及所属各街道</ADDRESS>
        <ZIP>158100</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo3" msdata:rowOrder="2">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>恒山区及所属各街道</ADDRESS>
        <ZIP>158100</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo4" msdata:rowOrder="3">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>鸡冠区及所属各街道</ADDRESS>
        <ZIP>158100</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo5" msdata:rowOrder="4">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>鸡冠区西郊乡</ADDRESS>
        <ZIP>158100</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo6" msdata:rowOrder="5">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>梨树区及所属各街道</ADDRESS>
        <ZIP>158100</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo7" msdata:rowOrder="6">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>安村付业队、义安村、安</ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo8" msdata:rowOrder="7">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>长胜村、薛家村、义安村</ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo9" msdata:rowOrder="8">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS></ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo10" msdata:rowOrder="9">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>滴道河乡</ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo11" msdata:rowOrder="10">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>红旗乡所属义安村三队、义</ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo12" msdata:rowOrder="11">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>乐村、红旗村、张鲜村、</ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo13" msdata:rowOrder="12">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>民主乡</ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo14" msdata:rowOrder="13">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>四队、小恒山村及其余各</ADDRESS>
        <ZIP>158130</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo15" msdata:rowOrder="14">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>村、南甸子村、全铁村</ADDRESS>
        <ZIP>158150</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo16" msdata:rowOrder="15">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>滴道河乡所属王家村、河东</ADDRESS>
        <ZIP>158150</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo17" msdata:rowOrder="16">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>鸡西市梨树乡</ADDRESS>
        <ZIP>158160</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo18" msdata:rowOrder="17">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>长青乡及所属新华村、新城</ADDRESS>
        <ZIP>158170</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo19" msdata:rowOrder="18">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>村、西城村、城西畜牧场</ADDRESS>
        <ZIP>158170</ZIP>
        </ZipInfo>
        <ZipInfo diffgr:id="ZipInfo20" msdata:rowOrder="19">
        <PROVINCE>黑龙江</PROVINCE>
        <CITY>鸡西市</CITY>
        <ADDRESS>及所属其余各村</ADDRESS>
        <ZIP>158170</ZIP>
        </ZipInfo>
        </NewDataSet>
        </diffgr:diffgram>
        </DataSet>

              处理CS代码
               List<Zipinfo> zipinfos = new List<Zipinfo>();

            List<XElement> list = e.Result.Nodes;

            string str = list[0].ToString();
            try
            {

                if (str.Contains("数据没有发现"))
                {
                    System.Windows.MessageBox.Show("数据没有发现");
                }
                else
                {
                    using (XmlReader reader = XmlReader.Create(new StringReader(str)))
                    {
                        Zipinfo zipinfo = null;
                        while (reader.Read())
                        {
                            if (reader.Name == "PROVINCE")
                            {
                                zipinfo = new Zipinfo
                                {
                                    province = reader.ReadInnerXml()
                                };
                            }
                            else
                            {
                                if (reader.Name == "CITY")
                                {
                                    zipinfo.city = reader.ReadInnerXml();
                                    continue;
                                }
                                if (reader.Name == "ADDRESS")
                                {
                                    zipinfo.address = reader.ReadInnerXml();
                                    continue;
                                }
                                if (reader.Name == "ZIP")
                                {
                                    zipinfo.zip = reader.ReadInnerXml();
                                    zipinfos.Add(zipinfo);
                                }
                            }
                        }

                    }
                }
            }
            catch (Exception exception)
            {
                if (str == null)
                {
                    System.Windows.MessageBox.Show("网络连接失败,请稍后再试!");
                }
                else
                {
                    System.Windows.MessageBox.Show(exception.Message);
                }
            }

            zipinfos.TrimExcess();

       


 

         


标签:
声明:无特别说明,转载请标明本文来源!