Я работаю с C#
и XSLT 2.0
. У меня возникла проблема с одним из шаблонов, похоже, он падает над заявлением <xsl:choose>
. Прошедшие значения: Key
- Value
пары и все, кроме двух значений, являются десятичными. Намерение состоит в форматировании десятичных знаков с 2 десятичными знаками и ,
на тысячи, а целые числа должны быть без десятичных знаков.xsl: выберите Выражение должно быть оценено до набора узлов
<xsl:choose>
<xsl:when test="Key='Seller count' || Key='Buyer count'">
<td>
<xsl:value-of select="format-number(Value, '0')"/>
</td>
</xsl:when>
<xsl:otherwise>
<td>
<xsl:value-of select="format-number(Value, '#,##0.00')"/>
</td>
</xsl:otherwise>
</xsl:choose>`
дает мне
An exception of type 'System.Xml.Xsl.XslTransformException' occurred in System.Data.SqlXml.dll but was not handled in user code
Additional information: Expression must evaluate to a node-set.
что несколько удивительно, так как он получает открытия и закрытия <td> </td>
в обоих when
и otherwise
.
Я предполагаю, что это нечто очевидное, что я не вижу.
Можете ли вы отправить минимальный, но полный код с вашим входным XML. –