我写XSL已经很久了,我有这个模板:
<xsl:template match="TeamMember" mode="author">
<xsl:element name="author">
<xsl:attribute name="email">
<xsl:value-of select="Email" />
</xsl:attribute>
<xsl:value-of select="Email" />
<xsl:value-of select="DisplayName" />
</xsl:element>
</xsl:template>
除了一件事之外,这似乎工作正常。它将输出Element BUT中的“Email”而不是属性。 XML Snippet beign匹配看起来像:
<TeamMember sequence="1" primaryIndicator="Yes" personID="102">
<Role rank="1">Analyst</Role>
<LastName>YYY</LastName>
<FirstName>XXX</FirstName>
<MiddleName />
<Position />
<ClientCode />
<Division ID="1" code="Equity Research" name="Equity Research" />
<Office ID="1" name="" time_zone_name="(GMT-5:00) Eastern Time (US & Canada)" time_zone_short="EST" />
<DisplayName>XXX YYY</DisplayName>
<Phone></Phone>
<Email>XXX.YYY@ZZZ.com</Email>
</TeamMember>
我正在使用.NET 4.0。
答案 0 :(得分:0)
没关系。这是一个上游错误。遗憾。
答案 1 :(得分:0)
我最好使用:
<xsl:template match="TeamMember" mode="author">
<author email="{Email}">
<xsl:value-of select="DisplayName" />
</author>
</xsl:template>
注意:属性值模板。