У меня есть следующий XML:
<Users>
<User Id="1">
<Name>abc</Name>
<LastName>d</LastName>
</User>
<User Id="2">
<Name></Name>
<LastName>ab</LastName>
</User>
<User Id="3">
<Name>a</Name>
<LastName>efg</LastName>
</User>
</Users>
Теперь я сортирую пользователей по следующему шаблону:
<xsl:template match="Users">
<Users>
<xsl:for-each select="User">
<xsl:sort select="Name"/>
<xsl:sort select="LastName"/>
<User>
<xsl:attribute name="Id">
<xsl:value-of select="attribute::Id"/>
</xsl:attribute>
<Name>
<xsl:value-of select="Name"/>
</Name>
<LastName>
<xsl:value-of select="LastName"/>
</LastName>
</User>
</xsl:for-each>
</Users>
</xsl:template>
Но мне нужна сортировка, которая удовлетворяет следующему условию: сортировка по имени. Если имя пустое или пустое, мне нужно отсортировать по LastName. Поэтому в произведенном XML мне нужно следующее упорядочение: User3, User2, User1.
Любая помощь приветствуется.
П.С .: Я использую ASP.NET 3.5