C#调用WebService接口实现天气预报在web前端显示
本文使用web (C#)调用互联网上公开的WebServices接口:
(http://www.webxml.com.cn/WebServices/WeatherWebService.asmx)来实现天气预报,该天气预报 Web 服务,
数据来源于中国气象局 http://www.cma.gov.cn/ ,数据每2.5小时左右自动更新一次,准确可靠。包括 340 多个中国主
要城市和 60 多个国外主要城市三日内的天气预报数据。
前端显示效果图:
实现的步骤:
1、引入Web服务。在VS中项目上右击→添加服务引用。
2、在弹出的添加服务引用窗口,加入web服务地址和引用后的命名空间。
3、在后台页面拼凑前端显示的内容的字符串,实现代码。核心代码如下:
1 public string getWeather() 2 { 3 StringBuilder sb = new StringBuilder(); 4 string[] WI = new string[22];//声明string数组储存放返回结果 5 cn.com.webxml.www.WeatherWebService s = new cn.com.webxml.www.WeatherWebService(); 6 string CityName = "北京"; 7 WI = s.getWeatherbyCityName(CityName); 8 sb.Append(string.Format(@"<table> 9 <tr><td>今天天气概况:</td><td><span>{0}</span> <span><img src=""image/weather/{1}""/> <img src=""image/weather/{2}""/></span></td></tr> 10 <tr><td>今天天气实况:</td><td>{3}</td></tr> 11 <tr><td>明天天气概况:</td><td><span>{4}</span> <span><img src=""image/weather/{5}""/> <img src=""image/weather/{6}""/></span></td></tr> 12 <tr><td>后天天气概况:</td><td><span>{7}</span> <span><img src=""image/weather/{8}""/> <img src=""image/weather/{9}""/></span></td></tr> 13 </table>",WI[6],WI[8],WI[9],WI[10],WI[13],WI[15],WI[16],WI[18],WI[20],WI[21])); 14 return sb.ToString(); 15 }
4、绑定字符串到web前端页面:
<%=getWeather() %>
4、天气的图标可至【http://www.webxml.com.cn/images/weather.zip】下载。
5、Web服务的其他方法参数直接访问【http://www.webxml.com.cn/WebServices/WeatherWebService.asmx】查询,从而实现其它丰富功能。
个人博客地址http://www.cnblogs.com/mengfei001/