用于 JSON 到 JSON 的“复制所有内容”液体模板

问题描述 投票:0回答:3

回到 xsl(t) 时代....如果您进行了“xml 到 xml”转换,您可以执行“复制 *星点 *星”(“按原样”复制所有内容).. 使用 xsl 的事情模板(可能)如下所示。

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
    <xsl:output method="xml" indent="yes"/>

    <xsl:template match="@* | node()">
        <xsl:copy>
            <xsl:apply-templates select="@* | node()"/>
        </xsl:copy>
    </xsl:template>
</xsl:stylesheet>

是否有任何一种流动的短语法可以实现 JSON 到 JSON 的转换?

我在网上搜索过...但是搜索短语非常模糊。

我发现的东西(但据我所知,答案并不完整)。

https://social.msdn.microsoft.com/Forums/en-US/1c6ae215-9dad-4921-b7ef-a826443a47bb/liquid-json-to-json-template-with-unknown-property-names?forum= azurelogicapps

liquid dotliquid liquid-template
3个回答
1
投票

只需传递整个对象就可以工作,就像

{{content}}
一样。 这个答案中有一个有效的示例。


1
投票

是的,有一些流动的短语法选项可用于 JSON 到 JSON 的转换。例如,以下模板将使用 Liquid 短语法“按原样”执行 JSON 中所有内容的副本:

Python 代码片段供参考....

{% assign input = your_input_json | 
jsonify %}
{{ input | pretty_json }}

这里,your_input_json是需要转换的输入JSON数据,jsonify过滤器用于确保输入正确格式化为JSON。 Pretty_json 过滤器用于以格式良好的方式输出转换后的 JSON 数据。请注意,此语法假设您使用的是 Liquid 模板语言。


0
投票

如果我们谈论的是DotLiquid,那么上面的答案不起作用,到目前为止我还没有找到答案。我的例子:

"Applications": [
                {
                    "AcademicYear": {
                        "Code": "2024/5",
                        "Text": "2024-25"
                    },
                    "AdmissionsEntrySystem": {
                        "Code": "D",
                        "Text": "Direct entry"
                    }
                }
                ]

液体:

{%- for app in content.StudentMessage.Student.Applications -%}
    {
      {{ app }}
    }
    {% break %}
{%- endfor -%}

输出:

{
  [AcademicYear, System.Collections.Generic.Dictionary`2[System.String,System.Object]][AdmissionsEntrySystem, System.Collections.Generic.Dictionary`2[System.String,System.Object]]
}
© www.soinside.com 2019 - 2024. All rights reserved.