请教一个xsl的问题
我的代码如下
private void GetXML()
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load( "data.xml ");
foreach (XmlElement node_y in xmldoc.SelectNodes( "rs/chan/em "))
{
XmlNode node_ti = node_y.SelectSingleNode( "ti ");
node_ti.InnerText; //这个就是我取出来的数据
}
}
我想实现http://www.zjkzw.com里的显示一条条新闻在页面上,显示6条,然后点更多就进入一个页面显示全部。别人说用xsl,但是具体我不知道怎么实现,请大家帮忙看看,谢谢!
------解决方案--------------------直接把XML取出来生成一个ds数据集,然后取出你要的数据节点集合
直接绑定到Repeater就可以了
这个用数据库实现很easy的一个功能,为什么这么喜欢用XML作数据源?
------解决方案--------------------我的xml
<?xml version= "1.0 " encoding= "utf-8 " ?>
<news>
<item id= "1 " context= "1郝龙斌:和平稳定两岸关系是台生存发展关键… ">
</item>
<item id= "2 " context= "1郝龙斌:和平稳定两岸关系是台生存发展关键… ">
</item>
<item id= "3 " context= "1郝龙斌:和平稳定两岸关系是台生存发展关键… ">
</item>
</news>
我的aspx:
<form id= "form1 " runat= "server ">
<div>
<asp:GridView ID= "GridView1 " runat= "server " AutoGenerateColumns= "False " DataSourceID= "XmlDataSource1 ">
<Columns>
<asp:BoundField DataField= "id " HeaderText= "id " SortExpression= "id " />
<asp:BoundField DataField= "context " HeaderText= "context " SortExpression= "context " />
</Columns>
</asp:GridView>
<asp:XmlDataSource ID= "XmlDataSource1 " runat= "server " DataFile= "XMLFile.xml " XPath= "/news/item ">
</asp:XmlDataSource>
</div>
</form>
这个是个简单的,根本用不了xsl,用也可以。要自己写,这个很简单的,你看看对你有什么帮助/news/item 这个可以改成你想要显示哪条记录 xpath 到网上找点资料
------解决方案-------------------- <xsl:for-each select= "item[position()<6] ">
<li>
<a>
<xsl:attribute name= "href ">
<xsl:value-of select= "link " disable-output-escaping= "yes "/>
</xsl:attribute>
<xsl:attribute name= "target "> _blank </xsl:attribute>
<xsl:value-of select= "title " disable-output-escaping= "yes "/>
</a>
( <span>
<xsl:attribute name= "color "> Gray </xsl:attribute>
<xsl:value-of select= "pubDate "/>
</span> )
</li>
</xsl:for-each>
----