天氣預報(asp.net web form)

我用的是 http://www.webxml.com.cn/WebServices/WeatherWebService.asmx   這個web服務,挺簡單的,

用興趣的同學可以先到  看看http://www.webxml.com.cn/WebServices/WeatherWebService.asmx這個網站,

然後添加一個web引用


具體代碼如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WeatherTEst1.WebForm1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    




    <p>
        省份:
        <asp:DropDownList ID="DropDownListProvince" runat="server" AutoPostBack="True" 
            onselectedindexchanged="DropDownListProvince_SelectedIndexChanged">
        </asp:DropDownList>
        城市:
        <asp:DropDownList ID="DropDownListCity" runat="server">
        </asp:DropDownList>
        <asp:Button ID="Button1" runat="server" Text="查天氣" οnclick="Button1_Click" />
    </p>
         
     
     <p>
         <asp:Label ID="LabelToday" runat="server" Text="---"></asp:Label>
     </p>
     <p>
         <asp:Label ID="LabelTomorrow" runat="server" Text="---"></asp:Label>
     </p>
     <p>
         <asp:Label ID="LabelAfterTomorrow" runat="server" Text="---"></asp:Label>
     </p>



    </div>
    </form>
</body>
</html>



後臺代碼:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace WeatherTEst1
{
    public partial class WebForm1 : System.Web.UI.Page
    {




        //page  laod
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                BindProvinceName();
            }
        }


        ServiceReference1.WeatherWebServiceSoapClient client = new ServiceReference1.WeatherWebServiceSoapClient("WeatherWebServiceSoap");


        protected void BindCityName(string province)
        {
            this.DropDownListCity.Items.Clear();
            foreach (string item in client.getSupportCity(province))
            {
                this.DropDownListCity.Items.Add(item);
            }
        }



        protected void BindProvinceName()
        {
            foreach (string item in client.getSupportProvince())
            {
                this.DropDownListProvince.Items.Add(item);
            }
        }

        protected void DropDownListProvince_SelectedIndexChanged(object sender, EventArgs e)
        {
            BindCityName(this.DropDownListProvince.SelectedItem.Text);
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            string code = this.DropDownListCity.SelectedItem.Text;
            int index = code.IndexOf('(');
            code = code.Substring(index+1, 5);
            string [] allInfo = client.getWeatherbyCityName(code);
            this.LabelToday.Text = allInfo[10];
            this.LabelTomorrow.Text = allInfo[6];
            this.LabelAfterTomorrow.Text = allInfo[13];
        }




    }//end   class
}


可能這裏寫的不清晰,推薦另一篇博文:    http://www.cnblogs.com/lzhp/archive/2013/01/13/2858559.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章