使用WCF-SQL适配器

问题描述:

我需要轮询XML格式的数据,并将其映射到EDI 834 .........使用WCF-SQL适配器

我已经写了使用XML自动,元素

存储过程

当我把它添加使用我得到一个XML消息适配器元数据消耗....

,但我需要使用这个XML消息,它映射到EDI834 ....如何获得XML的结构这样我就可以在地图中使用它了。

我也跟着http://social.msdn.microsoft.com/Forums/en-US/biztalkgeneral/thread/6a7e0093-0692-4ba5-9e14-0d2090c2cf54

此线程并使用xml轮询生成策略并将其映射到EDI834。

但是当我使用的地图为出站地图...它不映射轮询数据EDI 834 ..

的WCF-SQL适配器,就不再需要使用'FOR XML AUTO,元素的语法。这是来自旧的Sql适配器的传统遗留物。

只需以一种方式编写存储过程以返回一致的结果集,然后根据存储过程生成元数据。适配器框架将根据存储过程返回的元数据创建适当的模式。

然后,只需将WCF-SQL架构中的数据映射到您的EDI834架构即可。

+0

它会照顾嵌套节点也...因为有这么多的嵌套节点 – user1104946 2012-02-14 02:11:49

+0

我试图删除xml auto,元素语法.....它没有给出适当的结构... – user1104946 2012-02-14 02:34:14

+0

你得到什么结构?发布你正在收到的东西,与你期望的东西,可能有助于找出问题所在。 – Brett 2012-02-14 05:12:17

通过使用FOR XML路径语法

-SETUP使用WCF-SQL接收位置创建存储过程返回XML(或XML一部分)。选择XmlPolling。选择适配器的根名称和命名空间以环绕从SQL返回的xml(必需)。

- 设置轮询声明到:EXEC [SPNAME]

- 设置PollDataAvailableStatement到合适的东西,将返回一个计数> 0,如果有行/ XML被轮询。

- 使用passthrureceive管道为订阅了来自用于receivelocation的receiveport一切receivelocation

- 设置了发送端口(文件)。

- 启动应用程序。检查从适配器返回的XML。 (注意:您可能必须运行在BizTalk SDK/Utilities/Schema生成器下找到的InstallWFX.vbs,然后才能使用生成的XML生成模式(Add-> Add generated Items-> Generate Schemas)如果你之前没有在机器上完成这项工作)。

- 选择由适配器生成的xml文件(给该文件一个代表您尝试创建的模式的名称)。

现在,您应该拥有一个表示适配器返回的xml的模式,您可能必须手动检查模式并将数据类型更改为比向导选择的更适合的类型。