教你如何在 asp.net中实现 天气预报功能的 Webservices
2010-06-05 13:42
639 查看
调用天气预报功能实现的效果图如下:(你可以根据自己的需要来调整代码样式和.cs中的内容来实现自己想要的效果)
asp.net中实现 天气预报功能 的具体步骤:
首先启动VS2005 :
(1)新建网站,将其命名为WeatherService
(2)右键程序根目录,添加Web引用,在服务地址填入:http://www.ayandy.com/Service.asmx ,
在Web引用名输入obj ,然后添加引用。
(3)在WeatherService.aspx页面中写入:
<div>
省份:<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList>城市:<asp:DropDownList ID="DropDownList2" runat="server">
</asp:DropDownList>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="获 取" />
</div>
<div style ="border :solid 1px #8daaf4;margin-top :5px;">
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label3" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label4" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label5" runat="server" Text="Label"></asp:Label><br />
<asp:Image ID="Image1" runat="server" />
</div>
(4)在后置代码中写入:
//添加命名空间:
using System.Web.Services;
using obj;
//实例化引用对象:
obj.Service myobj = new obj.Service();
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindPro();
BindCity();
BindWeather();
}
}
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()));
}
}
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()));
}
}
protected void BindWeather()
{
string[] mystr = myobj.getWeatherbyCityName(DropDownList2.SelectedValue, theDayFlagEnum.Today);
Label1.Text = mystr[1].ToString();
Label2.Text = mystr[2].ToString();
Label3.Text = mystr[3].ToString();
string fengxaing = mystr[4];
Label4.Text = Convert.ToString(fengxaing);
Label5.Text = mystr[5].ToString();
Image1.ImageUrl = mystr[6].ToString();
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
BindCity();
}
protected void Button1_Click(object sender, EventArgs e)
{
BindWeather();
}
(5)你会发现在web.config中自动添加了下面的代码:
<appSettings>
<add key="obj.Service" value="http://www.ayandy.com/Service.asmx"/>
</appSettings>
若发现没有自动添加的话 自己手动添加即可.
asp.net中实现 天气预报功能 的具体步骤:
首先启动VS2005 :
(1)新建网站,将其命名为WeatherService
(2)右键程序根目录,添加Web引用,在服务地址填入:http://www.ayandy.com/Service.asmx ,
在Web引用名输入obj ,然后添加引用。
(3)在WeatherService.aspx页面中写入:
<div>
省份:<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList>城市:<asp:DropDownList ID="DropDownList2" runat="server">
</asp:DropDownList>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="获 取" />
</div>
<div style ="border :solid 1px #8daaf4;margin-top :5px;">
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label3" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label4" runat="server" Text="Label"></asp:Label><br />
<asp:Label ID="Label5" runat="server" Text="Label"></asp:Label><br />
<asp:Image ID="Image1" runat="server" />
</div>
(4)在后置代码中写入:
//添加命名空间:
using System.Web.Services;
using obj;
//实例化引用对象:
obj.Service myobj = new obj.Service();
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindPro();
BindCity();
BindWeather();
}
}
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()));
}
}
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()));
}
}
protected void BindWeather()
{
string[] mystr = myobj.getWeatherbyCityName(DropDownList2.SelectedValue, theDayFlagEnum.Today);
Label1.Text = mystr[1].ToString();
Label2.Text = mystr[2].ToString();
Label3.Text = mystr[3].ToString();
string fengxaing = mystr[4];
Label4.Text = Convert.ToString(fengxaing);
Label5.Text = mystr[5].ToString();
Image1.ImageUrl = mystr[6].ToString();
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
BindCity();
}
protected void Button1_Click(object sender, EventArgs e)
{
BindWeather();
}
(5)你会发现在web.config中自动添加了下面的代码:
<appSettings>
<add key="obj.Service" value="http://www.ayandy.com/Service.asmx"/>
</appSettings>
若发现没有自动添加的话 自己手动添加即可.
相关文章推荐
- 如何在asp.net中实现返回上一页的功能
- ASP.NET 如何实现抓屏功能
- 如何使用ASP.NET Core实现搜索功能
- 如何在asp.net中用jQuery实现便捷的提示功能和表单验证功能-S.Sams
- 如何实现asp.net中FileUpload文件类型过滤功能 .
- 如何用Asp.Net来实现“网络硬盘”功能
- 如何在asp.net中实现返回上一页的功能
- 如何用Asp.Net来实现“网络硬盘”功能
- 如何在asp.net中实现返回上一页的功能
- 如何在asp.net中实现返回上一页的功能
- 如何用ASP.NET实现倒计时功能
- asp.net如何实现像QQ空间日志的置顶功能!用得是sql+asp.net(调用存储过程)
- 如何利用asp.net控件实现这个功能?
- 如何在asp.net中实现返回上一页的功能
- 如何在asp.net中实现返回上一页的功能
- ASP.NET如何实现迅雷下载功能
- 如何在asp.net中实现返回上一页的功能
- 如何应用Asp.Net Mvc内建功能(DefaultModelBinder)实现简单类型、复杂类型、集合类型,以及字典类型的自动绑定
- 如何在asp.net中用jQuery实现便捷的提示功能和表单验证功能
- 在ASP.net中是如何实现注销功能的?