XSLT

2009-05-29 6 views
0

를 사용하여 XML 변환 나는 다음과 같은 XML이 : 내가 XmlDataSource 및 XSLT를 사용하여 ASP.net의 드롭 다운리스트에이 XML을 결합하려고XSLT

<?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> 

합니다. 이 일을 처음하는 시간입니다. 드롭 다운 목록에 올바른 빈 항목 수가 표시되어 반복이 작동하지만 값 및 텍스트가 비어 있다고 생각할 수 있습니다.

내 오류를 식별하는 데 도움이 될 것입니다.

감사

내 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> 

답변

2

이 줄 문제입니다 :합니다 (Category 템플릿 내부)이 시점에서

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

, 컨텍스트 노드는 현재 카테고리입니다. xsl:value-of에있는 선택자는 Category라고도하는 컨텍스트 노드의 하위 요소 인 을 찾고 있습니다. 대신 컨텍스트 노드의 텍스트 값을 얻기 위해 해당 행을 변경하십시오.

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

굉장! 고맙습니다. – Picflight