Tải bản đầy đủ (.pdf) (3 trang)

Lấy thông tin thời tiết từ VnExpress với ASP.NET potx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (166.75 KB, 3 trang )

Lấy thông tin thời tiết từ VnExpress với ASP.NET
Bài trước chúng ta đã lấy được thông tin thời tiết từ VnExpress bằng Javascript Ajax, trong bài này
chúng ta hãy thử lấy chúng về bằng ASP.NET xem sao
> Tạo box lấy thông tin thời tiết đơn giản từ VnExpress

do file thời tiết của VnExpress là XML vì vậy chúng ta sẽ sử dụng lớp XmlTextReader để lấy dữ liệu về dạng
XML
B1. Sau khi các bạn taọ Project trong file Default.aspx chúng ta kéo thả 1 ScriptManager 1 UpdatePanel và 1
DropDownList mục đích là để sử dụng Ajax của ASP.NET để Website của chúng ta không bị load lại khi bạn thay
chọn Item ở DropDownList
?

code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18


19
20
21
22
23
<form

id="form1"

runat="server">

<div>

<asp:ScriptManager

ID="ScriptManager1"

runat="server">

</asp:ScriptManager>

<asp:UpdatePanel

ID="UpdatePanel1"

runat="server">

<ContentTemplate>

<asp:DropDownList


ID="DropDownList1"

AutoPostBack="true"

runat="server"

onselectedindexchanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem

Value="SonLa">Sơn La</asp:ListItem>

<asp:ListItem

Value="Haiphong">Hải Phòng</asp:ListItem>

<asp:ListItem

Value="Hanoi"

Selected="True">Hà
Nội</asp:ListItem>

<asp:ListItem

Value="Vinh">Vinh</asp:ListItem>

<asp:ListItem

Value="Danang">Đà Nẵng</asp:ListItem>


<asp:ListItem

Value="Nhatrang">Nha Trang</asp:ListItem>

<asp:ListItem

Value="Pleicu">Pleiku</asp:ListItem>

<asp:ListItem

Value="HCM">Tp HCM</asp:ListItem>

<asp:ListItem

Value="Viettri">Việt Trì</asp:ListItem>

</asp:DropDownList>

<div

id="divWeather"

runat="server"></div>

</ContentTemplate>

</asp:UpdatePanel>

</div>


</form>

B2: Các bạn ấn F7 để vào code behide default.aspx.cs
các bạn viết một hàm GetWeather và hàm này trả về String, tham số nhận vào cũng là 1 string mục đích string
City truyền vào hàm để chúng ta sẽ ghép chuỗi để thành link của VnExpress




?

code
1
2
3
4
5
public

string

GetWeather(string

City)

{

string


strWrite = "";

XmlTextReader reader = null;


try

Generated by Foxit PDF Creator © Foxit Software
For evaluation only.
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
{

string

AdImg = "";

string

AdImg1 = "";

string

AdImg2 = "";


string

Weather = "";


reader = new

XmlTextReader(" />
+ City + ".xml");
XmlDocument xmldoc = new

XmlDocument();

xmldoc.Load(reader);


XmlNodeList nodelist = xmldoc.SelectNodes("Item");

XmlNode nodedetail;

nodedetail = nodelist.Item(0).SelectSingleNode("AdImg");

AdImg = nodedetail.InnerText;

nodedetail = nodelist.Item(0).SelectSingleNode("AdImg1");

AdImg1 = nodedetail.InnerText;

nodedetail = nodelist.Item(0).SelectSingleNode("AdImg2");


AdImg2 = nodedetail.InnerText;

nodedetail = nodelist.Item(0).SelectSingleNode("Weather");

Weather = nodedetail.InnerText;


strWrite += "<img src=' />
+ AdImg + "' border='0' width='36'
height='35' />&nbsp;";

strWrite += "<img src=' />
+ AdImg1 + "' border='0' width='19'
height='28' />";

strWrite += "<img src=' />
+ AdImg2 + "' border='0' width='19'
height='28' />";

strWrite += "<img src=' />' width='35' height='28' /><br />";
strWrite += Weather;

}

catch

(Exception ex)

{


strWrite = ex.Message;

}

finally

{

reader.Close();

}

return

strWrite;

}

trong sự kiện Page_Load chúng ta viết
?

code
1
2
3
4
protected

void


Page_Load(object

sender, EventArgs e)

{

divWeather.InnerHtml = GetWeather("HaNoi");

}

với sự kiện Page_Load như trên thì mỗi khi trang Web được load chúng ta sẽ mặc định lấy thời tiết của Hà Nội
lên đầu, để thay đổi sang thành phố khác các bạn thay
divWeather.InnerHtml = GetWeather("HaNoi");
divWeather.InnerHtml = GetWeather("HCM");
Generated by Foxit PDF Creator © Foxit Software
For evaluation only.
divWeather.InnerHtml = GetWeather("Danang");
divWeather.InnerHtml = GetWeather("HaiPhong");
Sự kiện khi DropDownList được chọn
?

code
1
2
3
4
protected

void


DropDownList1_SelectedIndexChanged(object

sender,
EventArgs e)

{

divWeather.InnerHtml = GetWeather(DropDownList1.SelectedValue);

}

Download Demo Project tại đây



Generated by Foxit PDF Creator © Foxit Software
For evaluation only.

×