Я пытаюсь отобразить входной XML в переменную, но он удаляет все имя тега, передавая только значение тега.
Входной XML
<Response>
<FirstName>Manoj</FirstName>
<LastName>Naik</LastName>
</Response>
XSLT
<xsl:stylesheet version="3.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="xsl in lang user f msxsl"
xmlns:in="http://www.composite.net/ns/transformation/input/1.0"
xmlns:lang="http://www.composite.net/ns/localization/1.0"
xmlns:f="http://www.composite.net/ns/function/1.0"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:user="urn:my-scripts">
<msxsl:script language="C#" implements-prefix="user">
<msxsl:assembly name="System.Data"/>
<![CDATA[
public string GetVaribaleData(string text)
{
return text;
}
]]>
</msxsl:script>
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes" />
<xsl:template match="/">
<xsl:variable name="encdata">
<xsl:copy-of select="." />
<!--<xsl:copy-of select="node()"/>-->
<!--<xsl:copy-of select="*" />-->
<!-- <xsl:copy-of select="node()|@*" /> -->
</xsl:variable>
<xsl:variable name="json" select="user:GetVaribaleData($encdata)"/>
</xsl:template>
</xsl:stylesheet>
С указанным выше кодом в выходной переменной возвращается \n\tManoj\n\tNaik\n
Ожидаемая информация в переменной encdata
и параметр, присутствующий вФункция C # text
, как показано ниже -
<Response>
<FirstName>Manoj</FirstName>
<LastName>Naik</LastName>
</Response>
Я хочу передать входной XML вместе с именем элемента в encdata
, присутствующий в XSLT.Я хочу использовать эту переменную в коде C # для дальнейшей обработки того же.
Есть ли способ сделать то же самое?