我在我的asp.net应用程序http://www.webservicex.net/globalweather.asmx?op=GetWeather中使用Global Weather Web Service。
代码工作正常,但我想只在标签上显示温度。
ServiceReference1.GlobalWeatherSoapClient client = new ServiceReference1.GlobalWeatherSoapClient("GlobalWeatherSoap");
string weather = client.GetWeather("Karachi Airport", "Pakistan");
Label1.Text = weather;
标签控制显示服务提供的完整数据(即日期,时间,国家和城市名称等)
答案 0 :(得分:2)
根据您提供的链接,它以XML格式返回该字符串。
请按以下方式使用:
var doc = XDocument.Parse(weather); //use .Load if you are pulling an xml file.
var location = doc.Root.Element("Location").Value;
var Temperature = doc.Root.Element("Temperature").Value;
Label1.Text = Temperature;
就像上面你也可以获得另一个值,例如DewPoint,RelativeHumidity等
var DewPoint= doc.Root.Element("DewPoint").Value;
var RelativeHumidity = doc.Root.Element("RelativeHumidity ").Value;
答案 1 :(得分:2)
你也可以这样做
string weather = client.GetWeather("Karachi Airport", "Pakistan");
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(weather );
XmlNodeList elemlist = xmlDoc.GetElementsByTagName("Temperature");
string temp= elemlist[0].InnerXml;