特殊字符上的Xslt转换

特殊字符上的Xslt转换,xslt,Xslt,我有一个XML文档,它需要在一个元素中传递文本,其中包含一个“&”。 这是从.NET调用到Web服务,并通过正确的编码& e、 g 然后,我需要使用XSLT创建转换,但需要通过SP查询SQL server,而不需要在符号上进行编码,例如T&O将转到DB (注意,所有这些都必须通过XSLT完成,此时我可以选择使用.NET编码) 有人知道如何从XSLT实现这一点吗 请注意,至少可以说我的XSLT知识不是最好的 干杯如果您可以选择使用.NET,您可以使用(此代码需要对System.Web的引用)

我有一个XML文档,它需要在一个元素中传递文本,其中包含一个“&”。 这是从.NET调用到Web服务,并通过正确的编码
&

e、 g

然后,我需要使用XSLT创建转换,但需要通过SP查询SQL server,而不需要在符号上进行编码,例如T&O将转到DB

(注意,所有这些都必须通过XSLT完成,此时我可以选择使用.NET编码)

有人知道如何从XSLT实现这一点吗

请注意,至少可以说我的XSLT知识不是最好的


干杯

如果您可以选择使用.NET,您可以使用(此代码需要对System.Web的引用)在HTML编码字符串和常规字符串之间进行转换:

更新

由于需要在普通XSLT中执行此操作,因此可以使用
xsl:value of
来解码HTML编码:

<xsl:variable name="test">
    <xsl:value-of select="'T&amp;O'"/>
</xsl:variable>


变量
字符串($test)
的值为
T&O
。然后,您可以将此变量作为参数传递给扩展函数。

如果您可以选择使用.NET,则可以使用在HTML编码字符串和常规字符串之间进行转换(此代码需要对System.Web的引用):

更新

由于需要在普通XSLT中执行此操作,因此可以使用
xsl:value of
来解码HTML编码:

<xsl:variable name="test">
    <xsl:value-of select="'T&amp;O'"/>
</xsl:variable>


变量
字符串($test)
的值为
T&O
。您可以将此变量作为参数传递给扩展函数。

假设您的XML如下所示:

<root>T&amp;O</root>

点是
元素。defauklt将输出XML,其中符号和仍将被编码。

假设您的XML如下所示:

<root>T&amp;O</root>
<xsl:text disable-output-escaping="yes">&amp;<!--&--></xsl:text>
点是
元素。defauklt将输出XML,其中的符号仍将被编码。

&;
<xsl:text disable-output-escaping="yes">&amp;<!--&--></xsl:text>
更多信息请访问:

&;

更多信息请访问:

我感觉你在这里把一些东西混在了一起。你能发布一个实际的输入文档(简称为相关部分)并澄清你想对数据做什么吗?另外,当您有.NET可供使用时,为什么要从XSLT中调用数据库?您好,Tomalak,请参见下面我在BizTalk映射器中工作,并且必须使用XSLT进行转换。我映射的模式对于映射器来说也是非常复杂的,这意味着我需要调用XSLT样式表。这不是我编写代码的方式,但必须遵循已经存在的内容。至少可以说,我的XSLT技能很高,有什么机制可以直接从XSLT调用SP?不知道这是支持的。您使用的是扩展方法吗?可以从下面的XSLT示例内部完成:该站点非常易于使用-它不是一个论坛,因此工作方式略有不同。但是一旦你掌握了窍门,你就再也不想看论坛了。我感觉你把一些东西混在一起了。你能发布一个实际的输入文档(简称为相关部分)并澄清你想对数据做什么吗?另外,当您有.NET可供使用时,为什么要从XSLT中调用数据库?您好,Tomalak,请参见下面我在BizTalk映射器中工作,并且必须使用XSLT进行转换。我映射的模式对于映射器来说也是非常复杂的,这意味着我需要调用XSLT样式表。这不是我编写代码的方式,但必须遵循已经存在的内容。至少可以说,我的XSLT技能很高,有什么机制可以直接从XSLT调用SP?不知道这是支持的。您使用的是扩展方法吗?可以从下面的XSLT示例内部完成:该站点非常易于使用-它不是一个论坛,因此工作方式略有不同。但是一旦你掌握了窍门,你就再也不想看论坛了。嗨,对不起,那是我的错别字,我没有选择使用.NET的权利,我会按照你的建议去做:)谢谢,对不起,那是我的错别字,我没有选择使用.NET的权利,如果不是这样的话,我会按照你的建议去做:)谢谢你必须把它写成
&
类似。我的XML源文档来自BizTalk,因此它需要是有效的XML文档,因此需要对符号进行编码。在创建输出文档之前,我需要根据源文档中没有编码的内容查询数据库。T&;O如果我使用&这可以在整个样式表上使用吗?我正在考虑创建一个变量,因为在转换过程中,我在很多地方通过SP调用DB?但是在这种情况下,需要有正确的T&O值。您必须将其写成
&
类似。我的XML源文档来自BizTalk,因此它需要是有效的XML文档,因此需要对符号进行编码。在创建输出文档之前,我需要根据源文档中没有编码的内容查询数据库。T&;O如果我使用&这可以在整个样式表上使用吗?我正在考虑创建一个变量,因为在转换过程中,我在很多地方通过SP调用DB?但在这种情况下,需要有正确的T&O值。
<xsl:text disable-output-escaping="yes">&amp;<!--&--></xsl:text>