2009-04-18 96 views
1

我正在使用.net c#,我想用rss feed填充datagrid。如何填充datagrid中的RSS提要?

問題是

當我在返回RSS提要數據集然後我得到多個表至極存儲不同勢數據。

意味着我要填寫網格「標題」和「圖片」這裏是我的代碼示例

protected void Button1_Click(object sender, System.EventArgs e) 
{ 
    XmlTextReader reader = new XmlTextReader(txtUrl.Text); 
    DataSet ds = new DataSet(); 
    ds.ReadXml(reader); 
    myDataGrid.DataSource = ds.Tables[2] ; 
    myDataGrid.DataBind(); 
} 

所有關於標題和說明,發佈日期的細節就是坐在桌子#2和相關圖像和圖像相關信息的大小存儲在表#3中,所以如何使用這兩列來感受網格?

在此先感謝

回答

1

我建議你試試RSS Tookit。它是開源的,很好地處理RSS源。您可以輕鬆地綁定到這樣的RSS提要:

<ast:RssDataSource id="RssDataSource1" runat="server" maxitems="5" url="http://news.google.com/?output=atom"></ast:RssDataSource> 
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="RssDataSource1"> 
    <Columns> 
    <asp:HyperLinkField DataNavigateUrlFields="link" DataTextField="link" HeaderText="Link"/> 
    <asp:BoundField DataField="title" HeaderText="Title" SortExpression="title" /> 
    </Columns> 
</asp:GridView> 

來源取自this page

1

或者,您可以使用內置的XmlDataSource

<asp:XmlDataSource id="XmlDataSource1" runat="server" XPath="/channel/item" DataFile="rssFeed.xml" /> 

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="XmlDataSource1"> 
    <Columns> 
    <asp:BoundField DataField="title" HeaderText="Title" SortExpression="title" /> 
    <asp:BoundField DataField="description" HeaderText="Description" /> 
    </Columns> 
</asp:GridView> 

我知道我給出的例子是用於GridView,但我認爲同樣的原理適用於DataGrid。 XPath表達式假定RSS 2.0。