我们在<QuickLearn BizTalk系列之"Hello World">里讲到了如何快速的开发第一个BizTalk 应用程序。现在我们来讲一下如何把这个程序改成用于搬运文件的程序。

我们的设想是:不管文件的类型是什么,将文件从In 文件夹搬到 Out 文件夹。我们来看看应该怎么实现这个设想。

首先我们会发现"Hello World"程序在接收位置的文件名称是" *.XML ".也就是说它只接收XML文件类型的文件。既然它支持通配符的表达式那么我们就可能把这里改为:" * " 也就是说让它支持任何类型的文件。(在Windows系统中允许文件没有扩展名,所以我们就用*让它代表所有的文件)

我们的测试数据有三种类型的文件,分别是:XML, ZIP, Gif。现在我们将这三种类型的文件拷贝到In文件夹。再看看输出文件夹:

[输入文件]

[输出文件]

很显然,我们输入的文件都已经被输出到正确的目标下了。也就是说BizTalk成功的路由了消息。但是这跟我们设想的还有点差距。输出的文件中除了XML 类型的消息可以被正确访问之外。其他文件需要更改为相应的文件后缀才可以被访问。但我们希望的是输入的文件在输出的时候还能够保持原样(文件名,文件大 小,文件类型)。那么我们接下来就要在发送端口做一下改变了。做什么改变呢?我们要让BizTalk输出文件的时候保持原有的文件名和后缀。

打开发送端口的类型配置对话框。我们会发现在文件名的表达式里有一个特别的关键字“%MessageID%”。这个表达式其实是BizTalk的宏,它表示的是这个消息在BizTalk中的ID号 。也就是说在执行的时候它会被真实的值给替换。

现在我们将这个表达式改为: %SourceFileName% . 这个宏的意思是保留原文件名称。

OK,现在我们配置好了。我们来看一下执行的效果。我们发现文件按照原有文件名被输出出来,而且可以被正常访问。

注意事项:本文主要是为了讲如何实现这一需求。在生产环境中使用该方法要考虑更多的因素:

文件大小   对于消息的处理需要对服务器做进一步的调整,目前微软官方已经测试通过了 2G的单文件。

数据库的维护    BizTalk的所有消息都是保存在BizTalk数据库里的所以要做好BizTalk 数据库的管理

系统稳定性 如果处理的文件过大,过多会造成系统的不稳定。

系统性能 不同的适配器性能表现不一样。

最新文章

  1. 3. 解析 struts.xml 文件
  2. Node判断文件是否链接
  3. dedecms后台验证码显示不正常的四种处理办法
  4. C struct结构体内存对齐问题
  5. LINUX运维实战案例之文件已删除但空间不释放问题的分析与解决办法
  6. 使用Sonatype Nexus搭建Maven私服后如何添加第三方JAR包?
  7. jquery的常用ajax操作
  8. Linux平台卸载MySQL总结【转】
  9. Android EditText 不弹出输入法
  10. org.apache.hadoop.fs-BlockLocation
  11. 转自 z55250825 的几篇关于FFT的博文(二)
  12. 2014年企业改善IT风险管理的5个办法
  13. BZOJ1634: [Usaco2007 Jan]Protecting the Flowers 护花
  14. Javascript 拖拽雏形——逐行分析代码,让你轻松了解拖拽的原理
  15. 利用jQuery打造个性网站
  16. mac mysql下载
  17. vue2 vue-rout
  18. DFS中的奇偶剪枝学习笔记
  19. pythonの连接MySQL数据库
  20. dotnet new 命令使用模板生成Angular应用

热门文章

  1. JS(event事件)
  2. Git分支操作
  3. Codeforces 617E XOR and Favorite Number(莫队算法)
  4. [R]R语言里的异常处理与错误控制
  5. Eclipse Java注释模板设置详解,更改 ${user}和${date}
  6. HDU 3074 (线段树+模P乘法)
  7. hdu1272 小希的迷宫
  8. codeforces round #234B(DIV2) B Inna and New Matrix of Candies
  9. [友盟微博分享]does not contain bitcode. You must rebuild it with
  10. zip ubuntu使用