หากมีคำถาม ขอให้ไปโพสต์ลง เว็บบอร์ดจีทูจีเน็ตดอตคอม ตัวใหม่แทนน่ะครับ

หรือติดต่อเข้ามาทาง Inbox ที่ เฟซบุ๊ค ผมครับ

หน้าหลัก
ข่าวสาร - บทความ ทั้งหมด
VB 6/VB.Net
ASP/ASP.Net
จับฉ่ายคอมพิวเตอร์
เรียนรู้ผ่าน Flash Movie
บทความที่มีผู้ตอบล่าสุด  
 RSS Feeds
 ดาวน์โหลดโปรแกรม RSS Reader ได้ที่นี่ ...   Download โปรแกรม RSS Reader

Forum - www.g2gnet.com
Webmaster - www.g2gnet.com
Visitors - Session views
 5 1 1 0 1 4 6

7 ธันวาคม พ.ศ.2549
42 Users On-Line.
Visitors - Page views
 8 4 0 3 3 2 3
1 กุมภาพันธ์ พ.ศ.2551

Google   
เว็บ g2gnet.com
ขนาดตัวอักษร:  

โค้ด ASP.Net เล็กพริกขี้หนูที่ทำการอ่านค่าจาก RSS Feed (รูปแบบ XML)

Category »  ASP/ASP.Net
โดย : Webmaster เมื่อ 10/11/2549 7:37:00
(อ่าน : 22456) 

นี่คือรูปแบบโดยทั่วไปของเอกสาร XML ครับพี่น้อง (ข้อมูลเพิ่มเติมเกี่ยวกับ XML ได้ที่นี่...)

<rss version="2.0">
  <channel>
    <title>Channel title</title>
    <link>URL</link>
    ...
    
    <item>
      <title>Title for Syndicating Content Item #1</title>
      <link>Link to Content Item #1</link>
      ...
    </item>
    <item>
      <title>Title for Syndicating Content Item #2</title>
      <link>Link to Content Item #2</link>
      ...
    </item>
    ...
    <item>
      <title>Title for Syndicating Content Item #N</title>
      <link>Link to Content Item #N</link>
      ...
    </item>
  </channel>
</rss>

ทีนี้มาดูโค้ด ASP.Net ที่ทำการอ่านค่า RSS Feed ที่อยู่ในรูปแบบของ XML

<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Xml" %>
<script language="VB" runat="server">
Sub Page_Load(sender as Object, e as EventArgs)    
    ' ส่งค่าตำแหน่งของ XML ไปให้ฟังค์ชั่น GetRSSFeed โดยมีตัวแปร strURL เป็น Argument ที่รอรับค่าอยู่
    recentPosts.DataSource = GetRSSFeed("http://www.g2gnet.com/News/NewsIT.xml")
    recentPosts.DataBind()      
End Sub

Function GetRSSFeed(strURL as String) as DataTable ' ส่งค่ากลับเป็นตาราง
    ' ง่ายมากครับพี่น้อง ก็แค่นำข้อมูลที่อยู่ใน RSS Feed (รูปแบบของ XML) จากแหล่งที่เราต้องการมากำหนดให้กับ xmlTextReader
    Dim reader as XmlTextReader = New XmlTextReader(strURL)
    
    Dim ds as DataSet = New DataSet()
    ds.ReadXml(reader)    
    Return ds.Tables(2)
End Function
</script>

<asp:DataGrid runat="server" id="recentPosts" />
ทดสอบการทำงานที่นี่
ดูภาษา XML ได้ที่นี่

ดูแล้วเข้าใจง่ายมั้ยครับพี่น้อง ... คือมันทำให้ผมมีความกระจ่างในเรื่องของ Web Services ได้ดีขึ้นค่อนข้างเยอะมากๆเลยครับผม (คิดเอาเอง 55555)

ทำการปรับปรุงแก้ไขการแสดงผลให้ดูดีมีชาติตระกูลกันอีกสักนิดนึงครับพี่น้อง ...
จากบรรทัดด้านบน <asp:DataGrid runat="server" id="recentPosts" /> ทำการแก้ไขใหม่ด้วย

'  ปรับปรุงใหม่โดยให้เลือกแสดงจาก Content ที่ถูกเก็บไว้ใน XML
<asp:DataGrid runat="server" id="recentPosts" AutoGenerateColumns="False"
     Font-Name="Tahoma" Font-Size="10pt"
     HeaderStyle-Font-Bold="True"
     HeaderStyle-HorizontalAlign="Center"
     HeaderStyle-BackColor="Navy" HeaderStyle-ForeColor="White"
     HeaderStyle-Font-Size="15pt"
     AlternatingItemStyle-BackColor="#eeeeee">
  <Columns>
    <asp:TemplateColumn HeaderText="Read XML By ASP.Net DEMO">
      <ItemTemplate>
	  	' อ่านค่าลิ้งค์
        <a href="<%# DataBinder.Eval(Container.DataItem, "link")%>" target="_blank">
		' อ่าน Title
          <%# DataBinder.Eval(Container.DataItem, "title") %>
' อ่าน Description <%# DataBinder.Eval(Container.DataItem, "Description") %> ' หรืออื่นๆที่เราต้องการ .... </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid>
ทดสอบการทำงานที่นี่

จี ทู จี เน็ต ดอต คอม - g2gNet Dot Com
เลขทะเบียนพาณิชย์อิเล็กทรอนิกส์ 0407314800231
CopyLeft © 2004 - 2099 g2gNet.Com All rights reserved.
Email: [email protected] หรือ โทร. 08-6862-6560