我需要使用存储过程将XML文档中的某些数据插入SQL表中。这应该使用Biztalk中的发送端口上的WCF-SQL适配器来完成。我已经在适配器上设置了连接属性,但缺少消息部分。
我目前正在使用下面的代码,并在主体模板中使用一些硬编码的值:
<SaveDocument xmlns="http://schemas.microsoft.com/Sql/2008/05/Procedures/dbo">
<conversationID>123456</conversationID>
<dataType>OIO</dataType>
<fromID></fromID>
<toID></toID>
<msgInfoExtension><![CDATA[<infoExt><fileInfo fileName="ublinvoice.xml" encoding="utf-8" /></infoExt>]]></msgInfoExtension>
<msgBody>
<bts-msg-body xmlns="http://www.microsoft.com/schemas/bts2007" encoding="string"/>
</msgBody>
<msgBodyBin></msgBodyBin>
</SaveDocument>
我需要获取XML文档中某些提升的属性,而不是硬编码的值,但是我不确定如何正确执行此操作。
在MS文档中,我找到了此页面,该页面描述了请求的结构:https://docs.microsoft.com/en-us/biztalk/adapters-and-accelerators/adapter-sql/message-schemas-for-procedures-and-functions
答案 0 :(得分:0)
saveSG.conversationID = sourceMSG(PropmotedProperty)
。 P.S。我认为您已经手动尝试创建SaveDocument模式。这可能是不正确的。正确的方法是创建存储过程,然后在Visual Studio中使用“生成实例”对话框,并将其配置为自动为您生成架构,此外,它甚至生成一个绑定文件,其中包含您需要的设置发送端口。
答案 1 :(得分:0)
您也许可以使用经常被忽略的Property Demotion功能。
基本上,它与Promotion相反,由XmlAssembler组件完成。