windows phone 7 调用webService,返回DataSet的处理
调用WebServices返回的是DataSet,由于WP7不支持DataSet所以按照XML处理。 http://webservice.webxml.com.cn/WebServices/ChinaZipSearchWebService.asmx?op=getZipCodeByAddresstheProvinceName:
theCityName:
theAddress:
userID:
返回XML:
This XML file does not appear to have any style information associated with it. The document tree is shown below.
黑龙江
鸡西市
城子河及所属各街道
158100
黑龙江
鸡西市
滴道区及所属各街道
158100
黑龙江
鸡西市
恒山区及所属各街道
158100
黑龙江
鸡西市
鸡冠区及所属各街道
158100
黑龙江
鸡西市
鸡冠区西郊乡
158100
黑龙江
鸡西市
梨树区及所属各街道
158100
黑龙江
鸡西市
安村付业队、义安村、安
158130
黑龙江
鸡西市
长胜村、薛家村、义安村
158130
黑龙江
鸡西市
村
158130
黑龙江
鸡西市
滴道河乡
158130
黑龙江
鸡西市
红旗乡所属义安村三队、义
158130
黑龙江
鸡西市
乐村、红旗村、张鲜村、
158130
黑龙江
鸡西市
民主乡
158130
黑龙江
鸡西市
四队、小恒山村及其余各
158130
黑龙江
鸡西市
村、南甸子村、全铁村
158150
黑龙江
鸡西市
滴道河乡所属王家村、河东
158150
黑龙江
鸡西市
鸡西市梨树乡
158160
黑龙江
鸡西市
长青乡及所属新华村、新城
158170
黑龙江
鸡西市
村、西城村、城西畜牧场
158170
黑龙江
鸡西市
及所属其余各村
158170
处理CS代码
List zipinfos = new List();
List list = e.Result.Nodes;
string str = list.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();
页:
[1]