如果在XMLDataSource中使用标准RSS提要,那么过滤RSS提要以仅显示RSS提要项描述包含特定术语的项目的最佳方法是什么?
例如,我希望过滤以下RSS提要,其中描述包含某个团队名称“利物浦”
http://pipes.yahoo.com/pipes/pipe.run?_id=9dae054b43e8ded5a10a659c39c72f49&_render=rss
我设置XML数据源的代码如下:
HomeDataSource.DataFile = "http://pipes.yahoo.com/pipes/pipe.run?_id=9dae054b43e8ded5a10a659c39c72f49&_render=rss";
HomeDataSource.XPath = "rss/channel/item";
HomeListView.DataSourceID = "HomeDataSource";
HomeListView.DataBind();
使用以下源代码显示上述代码的输出:
<asp:ListView ID="HomeListView" runat="server">
<LayoutTemplate>
<ul>
<asp:PlaceHolder ID="itemPlaceHolder" runat="server"></asp:PlaceHolder>
</ul>
</LayoutTemplate>
<ItemTemplate>
<li><a target="_blank" href="<%#XPath("link")%>">
<%#XPath("title")%></a>
</li>
</ItemTemplate>
</asp:ListView>
非常感谢您提出的任何建议。
答案 0 :(得分:0)
您将面临的问题是不同的Feed类型,Atom,RSS 1.0 / 2.0等,对某些常见字段使用不同的名称。您可以创建一个自定义DataSource控件来公开System.ServiceModel.Syndication SyndicationFeed对象,以便绑定或读取后面代码中的feed,并将SyndicationFeed或SyndicationFeed.Items绑定为ListViews DataSource。