使用 BizTalk 从 MSMQ 中接收消息

本文介绍如何配置BizTalk使用MSMQ接收多种类型的消息,并通过File适配器将消息转换为XML文件输出到指定文件夹的过程。

上篇文章《在MSMQ中使用事务处理消息》 介绍了如何使用c#程序向 MSMQ 写入消息以及从 MSMQ 中读取消息。本文将介绍如何使用 BizTlak 的 MSMQ 接收适配器从 MSMQ 中接收消息,然后使用一个 File 发送适配器将收到的消息转换为一个 XML 文件并发送至一个文件夹中。(向 MSMQ 中发送消息的情况类似,这里不再做介绍。)

 

1.使用 C# 程序向 MSMQ 中发送消息

使用上篇文章《在MSMQ中使用事务处理消息》中的代码创建一个名为 TestMQ 的私有消息队列并向其中发送三个消息:一个 Person 类型对象,一个 Order 类型对象,以及一个 System.String 类型对象。

需要注意的是,Order 类中直接将其成员变量设为了 public 状态,而 Person 类则通过特性(Property)来访问其成员变量——即通过 get 和 set 来读写变量。由于 BizTalk 智能处理特性,因此下面将会看到由 Order 对象生成的输出 XML 消息中只包含了 XML 框架信息而没有成员信息。

 

2.创建 MSMQ 接收适配器

在 BizTalk Application 1 中新建一个名为 MSMQReceivePort 的单向接收端口,并为其添加一个名为 MSMQRecevieLocation 的接收位置。MSMQRecevieLocation 的设置如下图所示:


 

 

3.创建 File 发送适配器

在 BizTalk Application 1 中新建一个名为 MSMQSendPort 的静态单向发送端口。参数设置如下:

 

 


需要注意,接收管道和发送管道都应当选则 PassThru 类型,否则将只有 .Net Framework 内建的 System.String 类型的消息会被处理,而 Person 类型和 Order 类型的消息将会被接收并挂起。

 

4.检查输出结果

执行第一步中的程序向 TestMQ 中发送三个消息,创建目录 ”C:/Out/”, 然后启动 BizTalk Application 1 。现在打开目录 ”C:/Out/” ,就可以看到三个 Xml 文件,分别对应了输入的三个消息。消息的内容如下:

 

Person 对象的输出消息:


Order 对象的输出消息:



 

System.String 对象的输出消息:


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值