毕业设计(十四)-在GridView上显示XML中的元素值还要用上XSL??

来源:互联网 发布:淘宝丝芙兰旗舰店 编辑:程序博客网 时间:2024/04/28 19:20

明天就是五一了,是大力工作的好日子阿(全天有电嘛

早上刚起来就在聚合的RSS上看到Dflying大哥BLOG上有朋友帮忙整理了一些Atlas的教程成PDF,真是太好了~
小弟定认真再拜读一遍(其实都看过了,就是没有学透阿~),将来要翻译这方面的资料要认真学习才行啊~
一切向大哥们学习,学习的是技术,还有那种无私的奉献精神

今天学到的东西和遇到的问题:
1.
小涛在学习绑定XML数据源的时候出了点毛病,他照着邵老师的例子来操作XML,可是现在他用的是GIRDVIEW,而邵老师讲课的时候用的是DataGrid。本来我认为基本绑定都一样的,但是在填好XPath后,GIRDVIEW根本就没有反应。点解???
参照了一下MSDN上的例子,慢慢我发觉能用XPath绑定的都是XML上“属性” ,而“字段”呢?根本就不可以~
(我想应该是可以的,但就是不行,也找不到文档~)
惟有认真看了看MSDN上例子,发觉他用到"字段"时都用上XSL才可以,点解阿???
XSL确实是个好东西,但如果我想简单的绑定一下字段也就显得有点麻烦了~难道美有更好的方法了么???

ex.

XML:

<?xml version="1.0" encoding="utf-8"?>
<books>
  <book>
    <name>《Java夜未眠》</name>
    <author>蔡学镛</author>
  </book>
  <book>
    <name>《无废话XML》</name>
    <author>两只老虎</author>
  </book>
</books>

XSL:

<?xml version="1.0" encoding="utf-8"?>

<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:template match="/">
    <xsl:for-each select="books">
      <xsl:element name="books">
        <xsl:for-each select="book">
          <xsl:element name="book">
            <xsl:attribute name="name">
              <xsl:value-of select="name"/>
            </xsl:attribute>
            <xsl:attribute name="author">
              <xsl:value-of select="author"/>
            </xsl:attribute>
          </xsl:element>
        </xsl:for-each>
      </xsl:element>
    </xsl:for-each>
  </xsl:template>
</xsl:stylesheet>

页面代码:

<asp:GridView ID="GridView3" runat="server" DataSourceID="XmlDataSource3" AutoGenerateColumns="False">
            <Columns>
                <asp:BoundField DataField="name" HeaderText="Name" SortExpression="title" />
                <asp:BoundField DataField="author" HeaderText="Author" SortExpression="author" />
            </Columns>
        </asp:GridView>
        <asp:XmlDataSource ID="XmlDataSource3" runat="server" DataFile="~/Test.xml" TransformFile="~/test2.xsl">
        </asp:XmlDataSource>

2.
今天用上了Regulator的工具,感决他的管理功能比创造功能还强
更爽的是,有需要就上http://regexlib.com/
就搞定了~呵呵