【问题标题】:Transform Xml using Xslt使用 Xslt 转换 Xml
【发布时间】:2009-05-29 22:37:54
【问题描述】:

我有以下 XML:

<?xml version="1.0" encoding="utf-8" ?>
 <ApplicationSettingCategories>
 <Category>Cat1</Category>
 <Category>Cat2</Category>
 <Category>Cat3</Category>
 <Category>Cat4</Category>
 <Category>Cat5</Category>
 <Category>Cat6</Category>
</ApplicationSettingCategories>

我正在尝试使用 XmlDataSource 和 Xslt 将此 Xml 绑定到 ASP.net 中的下拉列表。这是我第一次这样做。 Dropdownlist 显示了正确数量的空白项,让我相信迭代正在工作,但 Values 和 Text 是空白的。

如果能帮助我识别我的错误,我们将不胜感激。

谢谢

我的 XLST

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl">
<xsl:output method="xml" indent="yes"/>

<xsl:template match="ApplicationSettingCategories">
    <Categories>
        <xsl:apply-templates select="Category"/>
    </Categories>
</xsl:template>

<xsl:template match="Category">
    <Category>
        <xsl:attribute name="Category">
            <xsl:value-of select="Category"/>
        </xsl:attribute>
    </Category>
</xsl:template>

我的 ASPX

<asp:DropDownList ID="ddl1" runat="server" DataSourceID="XmlDataSource1" 
DataTextField="Category" DataValueField="Category" />
    <asp:XmlDataSource ID="XmlDataSource1" runat="server" 
    DataFile="~/App_Data/Xml/SettingCategory.xml" 
    TransformFile="~/Schema/AppCategoryXSLT.xslt"></asp:XmlDataSource>

我的源代码视图

<select name="ddl1" id="ddl1">
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
<option value=""></option>
</select>

【问题讨论】:

    标签: xml xslt xmldatasource


    【解决方案1】:

    这一行是你的问题:

    <xsl:value-of select="Category"/>
    

    此时(在Category 模板内),上下文节点是当前类别。您在xsl:value-of 上的选择器正在寻找一个上下文节点的子元素,也称为Category。只需更改该行以获取上下文节点的文本值:

    <xsl:value-of select="text()"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多