1

我一直在使用 Visual Studio 在 XSL 中映射各种文档,并取得了巨大的成功。智能感知特别棒。当我从 SAP IDoc 等文档 X 转到 X12 855 或 850 时,智能感知工作得很好。也就是说,当目标文档是 X12 时,它可以工作。我现在处于必须从 X12 850 映射到 SAP IDoc 的位置,并且智能感知完全被破坏了。我已将其范围缩小到此命名空间声明。一旦我添加 xmlns:s0="http://schemas.microsoft.com/BizTalk/EDI/X12/2006" 智能感知不再向我显示可用的标签。

如果没有该声明,我将获得所有 xsl:for-each、xsl-if 等的智能感知……当我添加声明时,我得到的只是 !--、![CDATA[ 和 ?

有没有人遇到过这个问题?

这是我用来重现问题的 XSL(在 Visual Studio 2013 中)

<xsl:stylesheet 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:msxsl="urn:schemas-microsoft-com:xslt" 
xmlns:var="http://schemas.microsoft.com/BizTalk/2003/var" exclude-result-prefixes="msxsl var s0" version="1.0" 
xmlns:ns0="http://schemas.microsoft.com/Edi/PropertySchema" 
xmlns:s0="http://schemas.microsoft.com/BizTalk/EDI/X12/2006">
<xsl:output omit-xml-declaration="yes" method="xml" version="1.0" />
<xsl:template match="/">
<xsl:apply-templates select="/s0:X12_00401_850" />
</xsl:template>
<xsl:template match="/s0:X12_00401_850">
<ns0:ISA06>
<xsl:value-of select="ST/ST01/text()" />
</ns0:ISA06>
</xsl:template>
</xsl:stylesheet>
4

0 回答 0