ASP.NET 获取天气预报-ASP.NET编程词典

本实例展示了如何使用ASP.NET平台的内置WebService支持,通过选择省份和城市,实时获取天气预报信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASP.NET 利用Web Service获取天气预报
◆  实例说明  
       本实例实现的是利用Web Service来实时获取天气预报,通过选择省份并选择所要查询的城市来获取该城市的天气预报。
本实例运行结果如图1所示。


                  图1  利用Web Service获取天气预报
◆  技术要点
      .NET平台内建了对Web service的支持,包括Web service的构建和使用。与其它开发平台不同,使用.NET平台,你不需要其他的工具或者SDK就可以完成Web service的开发了。.NET Framework本身就全面支持Web service,包括服务器端的请求处理器和对客户端发送和接受SOAP消息的支持。
本实例主要应用的技术要点就是根据传入的wsdl地址和调用的方法名和参数值等,自动调用webservice方法生成客户端。
◆  实现过程
(1)新建一个网站,默认主页为Default.aspx。
(2)在Default.aspx页面中添加一个Table表格、两个DropDowList控件和一个Button控件,分别用来布局页面、选择省份和城市及获取天气预报事件。
(3)主要程序代码。
首先,在页面代码中实例化一个WebService服务对象,声明如下:
obj.Service myobj = new obj.Service(); //实例化
在页面Page_Load事件中编写如下代码,调用三个自定义方法,分别用来绑定WebService服务中的省份、城市及相应的天气预报状况。
protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            //绑定省份信息
            BindPro();
            //绑定相应的城市信息
            BindCity();
            //绑定查找到的相应的天气预报
            BindWeather();
            Label4.Text = DateTime.Now.ToShortDateString();
        }
    }
自定义一个BindPro()方法来绑定所要查询的省份信息,代码如下:
protected void BindPro()
    {
        string [] pro=myobj.getSupportProvince();
        for (int i = 1; i <= Int32 .Parse (pro[0]); i++)
        {
            DropDownList1.Items.Add(new ListItem (pro[i].ToString (),pro[i].ToString()));
        }
    }
自定义一个BindCity()方法来绑定所要查询的相应省份的城市信息,代码如下:
protected void BindCity()
    {
        DropDownList2.Items.Clear();
        string[] city = myobj.getSupportCity (DropDownList1 .SelectedValue );
        for (int i = 1; i <= Int32.Parse(city[0]); i++)
        {
            DropDownList2.Items.Add(new ListItem(city[i].ToString(), city[i].ToString()));
        }
    }
自定义一个BindCity ()方法来绑定所查询的省份城市的天气预报信息,代码如下:
{
        string[] mystr = myobj.getWeatherbyCityName(DropDownList2 .SelectedValue , theDayFlagEnum.Today);
        Label1.Text = mystr[1].ToString();
        Label2.Text = mystr[2].ToString();
        Label3.Text = mystr[3].ToString();
        Label5.Text = mystr[5].ToString();
        Image1.ImageUrl = mystr[6].ToString();
    }
注意:在命名空间代码区域内引入如下命名空间:
using System .Web .Services ;
using obj; //引用

郑重声明:本技术资料来源于www.mrbccd.com 明日编程词典网 ASP.NET编程词典  如有转载 请标明此出处!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值