BizTalk 强制创建空元素而不使用 xslt 调用模板

2024-01-07

当源元素不存在时,BizTalk 映射中是否有强制创建目标元素而不使用 xslt 调用模板?

我将父/子 xml 映射到 wcf-sql 适配器生成的架构,该架构具有用于存储过程参数的表值参数。

所以我的源xml是:

<Category>
  <CategoryId>1</CategoryId>
  <CategoryName>Test</CategoryName>
</Category>

和/或带有媒体的类别

<Category>
  <CategoryId>1</CategoryId>
  <CategoryName>Test</CategoryName>
  <Media>
    <Medium>
      <MediumId>1</MediumId>
      <MediumName>test.jpg</MediumName>
    </Medium>
  </Media>
</Category>

TypedProcedure 的架构类似于:

<ImportCategoryRequest>
  <Category>
    <CategoryId>1</CategoryId>
    <CategoryName>Test</CategoryName>
  </Category>
  <Media>
    <Medium>
      <MediumId>1</MediumId>
      <MediumName>test.jpg</MediumName>
    </Medium>
  </Media>
</ImportCategoryRequest>

所以它不喜欢所有内容都显示在目标 XML 中。它不需要为表值参数传递 null 值,而是需要至少 1 行并为 tvp 中的列传递 null 值。我可以使用 xslt 调用模板创建虚拟 xml,但我想避免这种情况。


BizTalk 映射器似乎使用<xsl:for-each>因此,如果没有输入,则不会生成输出元素。

但使用 xslt 确实很容易 - 请参阅here https://stackoverflow.com/questions/3716608/biztalk-2010-mapping-an-xsd-with-a-lot-of-elements-with-the-same-name/3718014#3718014如何从现有映射中删除 xslt(仅删除双引号和斜杠周围的转义),以及如何将映射更改为自定义 XSLT。

您需要更改媒体周围的部分,如下所示:

        <xsl:choose>
            <xsl:when test="count(ns0:Media)!=0">
                <!-- Copy the mapper generated XSLT in the for each here-->
                <xsl:foreach >
                    </xsl:for-each>
                </xsl:when>
            <xsl:otherwise>
                <Media>
                    <Medium>
                        <MediumId>1</MediumId>
                        <MediumName>test.jpg</MediumName>
                    </Medium>
                </Media>
            </xsl:otherwise>
        </xsl:choose>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

BizTalk 强制创建空元素而不使用 xslt 调用模板 的相关文章

  • 默认代理如何绕过大多数网址并仅适用于少数

    在我们的 BizTalk Server 中 管理员已经安装了代理 此代理仅适用于少数 URL 大多数 URL 必须绕过它 我们在 BTSNTSvc64 exe config 上设置属性
  • 如何修复 XSLT 中的“样式表编译期间报告错误”?

    当我运行 XSLT 代码时出现此 SaxonApiExceptionhttps xslttest appspot com 它返回此错误 net sf saxon s9api SaxonApiException 样式表编译期间报告错误 我尝试
  • BizTalk - 将命名空间放在属性上?

    参考使用 json Array 的示例 JSON 和 XML 之间的转换 http www newtonsoft com json help html convertingjsonandxml htm 我想要 BizTalk 架构能够构建如
  • VM 快照期间 BizTalk 与 SQL 的连接问题

    我们有一个用于 BizTalk 的虚拟机和一个用于 SQL 后端的单独虚拟机 我们使用 Veeam 进行备份 这基本上会启动虚拟机的快照 当此快照在 SQL VM 上最终确定时 应用程序服务器上的 BizTalk 服务将失败 通常它们会自动
  • BizTalk 强制创建空元素而不使用 xslt 调用模板

    当源元素不存在时 BizTalk 映射中是否有强制创建目标元素而不使用 xslt 调用模板 我将父 子 xml 映射到 wcf sql 适配器生成的架构 该架构具有用于存储过程参数的表值参数 所以我的源xml是
  • 如何防止 BizTalk 2013/R2 WCF-WebHttp Rest SendPort 在 Http Status=400 上挂起

    我使用 WCF WebHttp SendPort 从 BizTalk 编排调用供应商的 REST 服务 即使我在具有scope exception的业务流程中捕获了此System Exception SendPort仍然处于挂起状态 是否有
  • GCHandle、AppDomains 托管代码和第 3 方 dll

    我查看了许多关于异常 无法跨 AppDomains 传递 GCHandle 的线程 但我仍然不明白 我正在使用由 DLL 驱动的 RFID 读取器 我没有这个 DLL 的源代码 只有一个示例来展示如何使用它 该示例效果很好 但我必须在另一个
  • 使用 C# 和 BizTalk 将 Excel (xlsx) 转换为 XML

    我已经查看了该论坛上有关类似问题的大多数主题 但尚未找到我正在寻找的内容 我正在尝试编写一个管道组件BizTalk 2013 R2使用 C 简单地转换传入的Excel 2010 xlsx文件到它的裸 基本 XML 表示形式 我不想针对它运行
  • BizTalk Server 有哪些可行的替代方案? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 在评估不同的系统集成策略时 我听到了一些关于 BizTalk Server 的鼓励的话 但也听到了一些
  • XSLT foreach 重复节点转为扁平化

    我有一个 XML 模式 需要从中提取值 但运气不太好 源架构是
  • BizTalk - 0 参数 Web 消息未在请求中发送

    我正在连接到 SOAP 1 1 Web 服务 不接受任何参数并返回一个简单的字符串响应 我已经使用旧的 NET 2 0 为复杂类型生成了 xsd 文件添加网页参考它还在 Reference odx 中生成了端口和多部分消息类型 在我的编排中
  • Biztalk Server 2009 - 故障转移群集和网络负载平衡 (NLB)

    我们正在计划设置 Biztalk 2009 其中有 2 个 Biztalk 应用程序服务器和 2 个数据库服务器 数据库服务器位于主动 被动集群中 所有服务器都运行 Windows Server 2008 R2 作为我们应用程序的一部分 我
  • Biztalk Log4Net [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 有人在 Biztalk 中使用过 log4net 吗 我们目前正在考虑使用它 并试图了解它的优点 缺点 以及它是否能满足我们的需求 我已经将 L
  • 在 Biztalk WCF 适配器中启用流式处理

    我想从 biztalk 发送一个带有一些元数据的大 blob 到 WCF 服务 我可以自由控制服务设置和 biztalk 设置 尽管我必须使用 http 来访问该服务 该 blob 很可能在 GB 范围内 因此使用 BasicHttp 或
  • BizTalk 2009 上的意外绑定重置

    我在 BizTalk 2009 上使用了许多应用程序 我多次注意到 在随机应用程序中添加资源 dll 后 精确应用程序的所有绑定 自定义管道 都会完全重置为之前的早期状态 我真的很好奇为什么会发生这种情况 但我还需要一个解决方案来阻止该行为
  • 构建服务器 (TFS2010) 需要安装 BizTalk 2010?

    是否需要 完整 BizTalk 2010 安装才能让生成服务器 TFS2010 生成 BizTalk 2010 解决方案 项目 据我所知 不需要安装 BizTalk 2010 您只需要以下组件 项目构建组件可在附加软件下使用 用于构建项目
  • 将 Ed25519 转换为 RSA 指纹(或如何查找 SSH 指纹)

    BizTalk 将内部 SFTP 测试的指纹视为 ssh rsa 2048 33 88 f0 ff 63 78 a9 2b 3f 09 cb 05 81 db 59 86 WinSCP 显示 ssh ed25519 256 ff 2e 5e
  • 无法安装 BizTalk 2013r2 CU6

    我正在尝试为 BTS2013r2 安装 CU6 我运行 exe 它解压然后启动向导 它进行或一段时间后会显示以下消息 I have the BizTalk ISO already downloaded from MSDN and mount
  • JSON 编码器生成 JSON 消息,在 BizTalk 2016 中添加空引号字符

    我的 XML 消息
  • Biztalk编排逆向工程师

    我的情况是 老开发人员没有留下代码 因此我无法添加任何增强功能或修复错误 我们是否有任何服务 工具可以将编排 映射 反转为原始格式 从 DLL MSI 或运行 BizTalk 应用程序 如果相反的方法不起作用 我希望看到像 Visual s

随机推荐