2009年3月14日

使用Xpath对XML进行模糊查询

摘要: 如果要对XML文件进行模糊查找的话是一个比较麻烦的事情,Xpath表达式中没有像文件系统中的“*”或"?" 或者有像SQL表达式中的"%",这样的模糊查找的通配符。但是还好,在Xpath的函数中提供了像contains和match这样的函数。 阅读全文

posted @ 2009-03-14 10:12 Gary Zhang 阅读(33756) 评论(4) 推荐(4) 编辑

2009年3月10日

C# 文件压缩与解压(ZIP格式)

摘要:在企业开发过程中经常会遇到文件的压缩与解压,虽然网上很多流行的压缩文件格式都是RAR的,但是由于RAR不是一个开放的标准,因此ZIP成了更多人的选择。如果你不想自己开发的话可以选择开源的项目,比如SharpZipLib就是一个不错的选择。 阅读全文

posted @ 2009-03-10 11:28 Gary Zhang 阅读(46181) 评论(14) 推荐(2) 编辑

2009年3月9日

BizTalk开发系列(三十四) Xpath

摘要:XPath是在XML 文档中查找信息的语言,在BizTalk的开发中应用非常广泛,当然你可以不必先学Xpath再去学BizTalk。但是如果对Xpath有一定了解的话,在很多应用下会使你的开发更加快捷。为了方便查阅整理了一些Xpath常识和实际实例给开发过程提供个参考。由于BizTalk还未支持Xpath 2.0,所以以下的例子都是基于W3C 1.0规范。 阅读全文

posted @ 2009-03-09 23:34 Gary Zhang 阅读(5291) 评论(3) 推荐(1) 编辑

2009年2月25日

SOA的困惑

摘要:最近项目里需要兼写一些Asp.NET的管理后台,才发现自己有一段时间没有碰过Asp.NET的开发了。前一段时间一直在做BizTalk的项目和开发,做起来有些手生。不过今天要谈的不是Asp.NET Coding的问题。而讨论一下在Asp.NET开发过程中的一些应用“SOA”思想的困惑。 阅读全文

posted @ 2009-02-25 23:56 Gary Zhang 阅读(2286) 评论(16) 推荐(0) 编辑

2008年12月22日

BizTalk开发系列(三十三)BizTalk之Excel终极解决方案

摘要:Excel作为优秀的客户端数据处理程序得到了广泛的应用. 由于其简单又强大的功能在很多公司或个人的数据处理中占用非常重要的位置. 而BizTalk作为微软的SOA主打产品虽然免费提供了很多Adapter支持各种协议及应用程序. 不过非常可惜没有提供对富客户端程序Excel的"原生态"支持. 所以我们只能自己查找解决办法。 阅读全文

posted @ 2008-12-22 01:07 Gary Zhang 阅读(3883) 评论(17) 推荐(0) 编辑

2008年12月9日

BizTalk Server 2009 Beta初体验

摘要: BizTalk Server 2009 Beta版发布了,不少人都想看看"庐山真面目", 我也是怀着这样的心情, 想了解一下BizTalk 2009给我们带来的最直接的感观上的变化!今天花了点时间把BizTalk的基本组件安装和配置好了.由于暂时没有拿到WSS 3.0 + SP1安装包所以此次安装没有包含BAM组件. 阅读全文

posted @ 2008-12-09 22:05 Gary Zhang 阅读(3676) 评论(14) 推荐(0) 编辑

BizTalk Server 2009 测试版发布

摘要:今天早上登录QQ的时候就看到Kern在BizTalk群里发布的消息: BizTalk Server 2009 Beta版发布了!激动!先点链接把BizTalk当下来,后来又跑到了BizTalk Team Blog看了一下,果然第一条消息就是关于BizTalk Server 2009 Beta的发布。看到消息内容不长,为了大家看的方便就把它翻译一下。呵呵。水平不好,附上英文原版给大家参考参考。 阅读全文

posted @ 2008-12-09 12:58 Gary Zhang 阅读(1906) 评论(4) 推荐(0) 编辑

2008年12月7日

BizTalk开发系列(三十二)浅谈BizTalk主机性能优化

摘要:很多BizTalk的项目都要考虑到性能优化的问题,虽然BizTalk采用多线程处理消息的,大大提高了程序效率。但默认情况下BizTalk的主机有很多阻止参数会控制BizTalk对服务器的资源使用率,从而约束了BizTalk的效率。之前做了一个200万条CSV数据通过BizTalk传到数据库的程序。在不改变程序的情况下对主机性能做了一下简单优化,处理效率发生了成倍的增长。 阅读全文

posted @ 2008-12-07 01:50 Gary Zhang 阅读(3004) 评论(4) 推荐(1) 编辑

2008年12月6日

BizTalk开发系列(三十一)配置和使用HTTP适配器

摘要:BizTalk的主机分别进程内主机和独立主机。但由于一直使用的是进程内主机,对于独立主机的认识比较模糊,前不久在做一个BizTalk的项目的时候,个别系统使用HTTP的方式发布Txt之类的文本的。刚好HTTP适配器与其他的适配器有一点不同就是它的接收适配器是宿主在独立主机(IIS)上。在使用的时候需要进行额外的配置。现在我们就来看一下运行于独立主机上的HTTP接收适配器的使用,以及运行于进程内主机的发送适配器的使用。 阅读全文

posted @ 2008-12-06 16:48 Gary Zhang 阅读(3919) 评论(8) 推荐(1) 编辑

2008年11月26日

BizTalk开发系列(三十)单向端口实现请求-响应

摘要:BizTalk本质上是异步的消息处理引擎。BizTalk的请求与响应模式是基于异步之上的同步消息交换。消息引擎通过消息的扩展架构链接许多异步消息,消息的相关集关联请求与响应消息。例如,客户端发送一个SOAP请求到BizTalk SOAP适配器。连接该Web Service的BizTalk Orchestration接收处理消息。并返回一个SOAP响应消息。对于客户端程序来说是一个同步的SOAP请求。但在引擎内部则是通过并联交换许多的异步消息来实现。 阅读全文

posted @ 2008-11-26 01:58 Gary Zhang 阅读(2783) 评论(3) 推荐(0) 编辑

2008年11月22日

BizTalk开发系列(二十九) 宏的使用

摘要:在BizTalk中可以使用宏集合动态的让BizTalk发送处理程序使用单独的值来替换宏。常用的使用宏的发送程序有:文件发送适配器和SMTP发送适配器。在表达式中可以使用同时使用多个宏。例如:在文件发送适配器的文件名中使用%SourceFileName%_%datetime%_%MessageID%.xml则表达用“_”连接的三个宏值。 阅读全文

posted @ 2008-11-22 16:41 Gary Zhang 阅读(1114) 评论(3) 推荐(0) 编辑

BizTalk开发系列(二十八) MSMQ 适配器

摘要:MSMQ(MicroSoft Message Queue,微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,相互通信的应用可以分布于同一台机器上,也可以分布于相连的网络空间中的任一位置。BizTalk Server 使用MSMQ Adapter向MSMQ发送以及从其接收消息。MSMQ 适配器支持 Message Queuing 2.0 和 Message Queuing 3.0。本文简要的介绍MSMQ的相关概念,演示如何使用MSMQ适配器向发送和接收其消息。最后阐述在使用MSMQ Adapter适配器的相关问题及相关解决办法。 阅读全文

posted @ 2008-11-22 15:46 Gary Zhang 阅读(2291) 评论(1) 推荐(1) 编辑

2008年11月18日

BizTalk开发系列(二十七) 异常管理中的数据编码

摘要:在BizTalk的异常管理解决方案中。大部分是通过订阅相关的升级属性来接收消息,并在自定义的流程或发送端口进行处理。但不管怎样,一般会定义统一的错误消息Schema,这样不仅可以让我们通过异常信息快速的查找错误。还可以方便的跟不同的系统或存储方式做映射。 阅读全文

posted @ 2008-11-18 05:37 Gary Zhang 阅读(2290) 评论(2) 推荐(0) 编辑

2008年11月13日

BizTalk开发系列(二十六) 使用Web Service

摘要:Web Service是在构建SOA平台中广泛使用的技术。在BizTalk开发过程中使用SOAP适配器接收和发送 Web Services 请求。业务流程可以发布为 Web Services 并使用外部 Web Services。由于Web Service是基于Internet上统一、开放的标准,如HTTP、XML、SOAP(简单对象访问协议)、WSDL等内容比较丰富。这里仅探讨在BizTalk中如何使用Web Service。 阅读全文

posted @ 2008-11-13 02:51 Gary Zhang 阅读(7911) 评论(8) 推荐(0) 编辑

2008年11月4日

BizTalk开发系列(二十五) SQL Adapter

摘要:SQL Server 是.NET开发的首选数据库。当然开发BizTalk应用程序很多也离不了SQL Server.针对SQL Server的数据操作BizTalk 提供了SQL Adapter作为与数据库交互的接口。本文是一篇基础文章,一部分内容摘自BizTalk的帮助文档。主要介绍了在SQL Adapter使用过程中需要了解或掌握的相关知识。如果您已经很了解BizTalk开发的话欢迎作补充。 阅读全文

posted @ 2008-11-04 00:05 Gary Zhang 阅读(4223) 评论(8) 推荐(0) 编辑

2008年10月28日

[原创]BizTalk 开发系列

摘要:本系列所有的文章都是原创的(如有引用文章里有相关说明),因此如需转载请先联系本人,并注明文章出处。希望能够继续支持!如需解答问题及联系其他相关信息请直接邮件或MSN联系: cbcye@live.com 或者在博客上留言. 阅读全文

posted @ 2008-10-28 12:40 Gary Zhang 阅读(12180) 评论(1) 推荐(6) 编辑

2008年10月27日

BizTalk开发系列(二十四) BizTalk项目框架建议

摘要:Asp.NET有MVC框架,大部份的开发都是按照MVC进行的。BizTalk是面向消息的开发,不能完全采用分层的开发模式。而微软只提供了BizTalk项目开发的基本策略,通过分析相关的Complex项目。还有自己参与的一些BizTalk项目。整理了一下在BizTalk项目框架的建议。 阅读全文

posted @ 2008-10-27 03:37 Gary Zhang 阅读(3697) 评论(9) 推荐(0) 编辑

BizTalk开发系列(二十三) BizTalk性能指标参考

摘要:BizTalk项目目前比较少,使用的客户也不多。大多只知道BizTalk是一个不错的产品,是Microsoft SOA平台的核心产品,不过还没有将其应用到生产环境。还有一些客户对BizTalk的性能不是很了解。于是我们做项目的时候也要对BizTalk进行一些相关的性能测试。以下是微软官方的性能指标,可供性能测试的时候做下参考。 阅读全文

posted @ 2008-10-27 02:12 Gary Zhang 阅读(1315) 评论(0) 推荐(0) 编辑

BizTalk开发系列(二十二) 开发自定义Map Functoid

摘要:尽管 BizTalk Server 提供许多Functoid以支持一系列不同的操作,但仍可能会遇到需要其他方法的情况。《BizTalk开发系列 Map扩展开发》介绍了通过使用自定义XSLT,脚本 Functoid等方法来扩展。这里要介绍的是通过自定义 functoid 的方法扩展。 阅读全文

posted @ 2008-10-27 01:25 Gary Zhang 阅读(1480) 评论(3) 推荐(1) 编辑

2008年10月26日

BizTalk开发系列(二十一) Mapping 扩展开发

摘要:BizTalk Map编辑器提供了常用的功能块,比如数据库,字符串,数字计算等功能。可在设计Map时直接使用这些功能块进行扩展。除此之外对于进行复杂的Map处理,Map 编辑器提供了扩展XSLT,扩展XML以及脚本功能块。给Map开发提供了强大的可扩展空间。BizTalk SDK已经提供了Map扩展的Sample(C:\Program Files\Microsoft BizTalk Server 2006\SDK\Samples\XmlTools\ExtendingMapper)。以下将分别针对不同场景讲述这些扩展功能。 阅读全文

posted @ 2008-10-26 21:45 Gary Zhang 阅读(2010) 评论(0) 推荐(0) 编辑

2008年10月25日

BizTalk开发系列(二十) 类型作用域

摘要:Orchestration中的Type概念跟.NET 里的Class一样,可以在Orchestration开过过程中将多个实例绑定到一种类型。Orchestration 视图里包括的类型有Port Types , Multi-part Message Types, Correlation Types,Role Link Types。这些类型分别对应着:Port实例, Multi-part Message实例, Correlation实例, Role Link实例。 阅读全文

posted @ 2008-10-25 22:01 Gary Zhang 阅读(1207) 评论(0) 推荐(0) 编辑

BizTalk开发系列(十九) BizTalk命名规范

摘要:目前BizTalk项目的开发人员比较少,但是在开发过程中还是需要命名规范的约束。根据以往BizTalk项目的经验,整理了BizTalk命名规范。包括:BizTalk Application, Schema, Map, Pipeline, Orchestration Logic Port, Physical Port等。并提供了相关的示例方便大家参考。 阅读全文

posted @ 2008-10-25 18:52 Gary Zhang 阅读(1427) 评论(0) 推荐(1) 编辑

2008年10月22日

BizTalk开发系列(十八) 使用信封拆分数据库消息

摘要:之前写了一篇的《BizTalk开发系列(十七) 信封架构(Envelop)》是关于信封架构及其拆装原理的,都是理论性的内容。信封在BizTalk开发过程中最常用的应该是在读取SQL Server 数据库的时候。一次性读取多条消息,提高了SQL Adapter对SQL Server的读取性能。今天就来做一下这个实例,增强对信封消息的理解。 阅读全文

posted @ 2008-10-22 02:37 Gary Zhang 阅读(1779) 评论(0) 推荐(0) 编辑

BizTalk开发系列(十七) 信封架构(Envelop)

摘要:在BizTalk开过中使用信封架构可以提高BizTalk处理性能。比如在使用SQL Adapter时使用信封选取多条记录在通过管道的XML拆装器时将信封里的XML消息部分拆分为单独的消息,发布到MessageBox。BizTalk会创建多个处理实例处理这些消息。减少SQL Adapter与数据库的交互次数。 阅读全文

posted @ 2008-10-22 00:59 Gary Zhang 阅读(2167) 评论(0) 推荐(0) 编辑

2008年10月17日

BizTalk开发系列(十六) XML命名空间

摘要:BizTalk开发过程中如果有对XML进行开发操作,比如在自定义代码里操作XML消息或者在Mapping的时候使用Xpath对XML进行操作。则有机会遇到XML命名空间的问题。常见的是使用Xpath选取节点的时候不知道要不要加上命名空间前缀,或者是什么时候该加什么时候不该加。为此,做一个Sample来校验一下XML命名空间在XML操作过程中的影响。 阅读全文

posted @ 2008-10-17 23:18 Gary Zhang 阅读(1909) 评论(2) 推荐(0) 编辑

2008年10月16日

BizTalk开发系列(十五) Schema设计之Qualified 与Unqualified

摘要:XML Schema中的命名空间前缀限定包括对元素(Element)或属性(Attribute)的限定,即常见的如“...”之类的格式。 阅读全文

posted @ 2008-10-16 00:30 Gary Zhang 阅读(2112) 评论(2) 推荐(0) 编辑

2008年10月10日

BizTalk开发系列(十四) XML空白字符(WhiteSpace)

摘要:最近在做一个BizTalk项目,对XML文件的处理很复杂。本来是想找有没有方法可以一次性去除XML文件中节点和属性的值的空格。但是找了很久没有看到相关的方法。如果有知道该方法的麻烦跟我讲一下:cbcye@live.com 不过下面我整理了一下与之相关的XML空白字符(WhiteSpace)。 阅读全文

posted @ 2008-10-10 01:54 Gary Zhang 阅读(2690) 评论(0) 推荐(0) 编辑

2008年10月7日

BizTalk开发系列(十三) Schema设计之值约束

摘要:XML Schema 的作用是定义 XML 文档的合法构建模块。在开发过程中有时需要对XML文档做精确的约束。以保证XMl数据的准确性。 今天我们以一个班级Sample来讲探讨一下如何在开发BizTalk Schema过程中对XML数据做精确的约束。这个Schema定义了一个班级,班级下面有成员,成员下面有Name属性,Mobile,City,Result,Comment等字段。 阅读全文

posted @ 2008-10-07 03:00 Gary Zhang 阅读(2047) 评论(0) 推荐(0) 编辑

2008年10月5日

BizTalk开发系列(十二) Schema设计之Group与Order

摘要:开发BizTalk项目的时候会先约定各系统之间往来的消息格式. 由于BizTalk内部唯一使用XML文档。因此消息的格式一般定义为XML Schema(XML Schema 用于描述 XML 文档的结构)。虽然BizTalk提供了对于XML消息的验证功能。但是往往在BizTalk Schema设计器设计Schema的时候对于Group的用途不是很在意。 阅读全文

posted @ 2008-10-05 12:48 Gary Zhang 阅读(1970) 评论(0) 推荐(1) 编辑

BizTalk开发系列(十一) 在Orchestration中执行Pipeline

摘要:由于开发需要有时要在流程中执行Pipeline。比如从DB的某个字段中取消息的字符串并在流程中构造消息。该需要通过pipeline进行升级属性字段,验证消息等处理。BizTalk架构已经开放了此接口: XLANGPipelineManage类,以下为在流程中使用接收和发送端口示例。需在项目中引用Microsoft.XLANGs.Pipeline组件(C:\Program Files\Microsoft BizTalk Server 2006\Microsoft.XLANGs.Pipeline.dll) 阅读全文

posted @ 2008-10-05 03:00 Gary Zhang 阅读(2383) 评论(3) 推荐(0) 编辑

BizTalk开发系列(十) ESB Guidance安装笔记

摘要:ESB指导工具包(ESB Guidance)是一个运行于BizTalk Server 2006 R2之上的一个框架。详细信息访问ESB指导工具包社区网站 。源码下载 ESB Guidance的安装过程非常复杂牵涉到的问题也是很多方面的。我也是装了数次之后才能成功。以下是安装时的笔记,安装时主要参照ESB Guidance的帮助文档,如果遇到问题可以查此笔记。 阅读全文

posted @ 2008-10-05 02:19 Gary Zhang 阅读(2592) 评论(0) 推荐(1) 编辑

2008年9月24日

BizTalk开发系列(七) Hello World2

摘要:之前根据BizTalk的订阅原理,使用BizTalk管理控制台创建了第一个应用程序 Hello World。但是由于控制台的开发功能有限,绝大多数的BizTalk程序都是在集成开发环境Visual Studio下进行的。下面我们在Visual Studio下创建Hello World2程序。 阅读全文

posted @ 2008-09-24 01:44 Gary Zhang 阅读(4700) 评论(25) 推荐(3) 编辑

2008年9月20日

BizTalk开发系列(六) BizTalk开发简述

摘要:现在很多大型企业信息化程度很高,运行中的系统可达到数十乃至上百个。而大部分系统由于建设的时间、开发团队和技术往往不相同,系统之间的大部分都是独立运行的。随着信息化建设的深入各系统之间的交互需求越来越紧迫。但是由于信息化的建设不可能一触而就,也不可能再组建一个团队把所有的系统重构。因此需要一个系统与系统之间交互的中间件。 BizTalk就是这样一个中间件。它本质上是一个消息处理引擎,处理消息验证,映射,业务流程等。以下是BizTalk的运行时高度概括结构,了解其结构可以在更有针对性的开发相关业务。 阅读全文

posted @ 2008-09-20 15:15 Gary Zhang 阅读(3484) 评论(0) 推荐(0) 编辑

2008年9月17日

BizTalk开发系列(五) 属性字段

摘要:在根据消息内容进行路由的时候经常使用的是可分辨字段和属性字段。属性字段可以在各个 BizTalk Server 组件(包括管道和业务流程)中进行访问。属性字段还可用于消息路由。如果需要在上下文(而不是在业务流程)中访问升级的消息数据,必须创建一个或多个属性架构来描述要升级的数据。 阅读全文

posted @ 2008-09-17 02:08 Gary Zhang 阅读(3378) 评论(14) 推荐(0) 编辑

BizTalk开发系列(四) 深入Map测试

摘要:在BizTalk的开发过程中XML消息间的映射是一个很重要的内容。如果只是一般的从源节点的值复制到目标节点的话,BizTalk项目提供的MAP测试和验证就已经可以满足需求了。但是很多时候需要在映射的过程中进行复杂的处理。比如节点值的组合运算等。幸好Visual Studio提供了对XSLT的测试功能。在BizTalk的开发过程中可以借助此功能做到Map的"单步"调试。下面我们分别看一下Map的简单测试与高级测试。 阅读全文

posted @ 2008-09-17 00:59 Gary Zhang 阅读(3858) 评论(0) 推荐(0) 编辑

2008年9月12日

BizTalk开发系列(三) 单机环境下的BizTalk Server 2006 R2安装

摘要:大部分的开发环境都是在单机环境下进行的,今天整理了一下BizTalk Server 2006 R2在单机环境下的安装步骤。 阅读全文

posted @ 2008-09-12 02:33 Gary Zhang 阅读(4950) 评论(10) 推荐(1) 编辑

BizTalk开发系列(二) "Hello World" 程序搬运文件

摘要: 我们在里讲到了如何快速的开发第一个BizTalk 应用程序。现在我们来讲一下如何把这个程序改成用于搬运文件的程序。 我们的设想是:不管文件的类型是什么,将文件从In 文件夹搬到 Out 文件夹。我们来看看应该怎么实现这个设想。 阅读全文

posted @ 2008-09-12 01:27 Gary Zhang 阅读(4254) 评论(9) 推荐(7) 编辑

2008年9月10日

BizTalk开发系列(一) "Hello World"

摘要:学习开发语言的时候很喜欢输出“Hello World”作为第一个程序。今天我们也在BizTalk 上创建一个简单的 "Hello World" 程序。 刚学习BizTalk的时候有很多文章都是教你如何使用Visual Studio开发BizTalk 应用程序的。今天我们来换一种思路开发第一个BizTalk "Hello World"应用程序。也就是直接通过BizTalk 管理控制台创建应用程序。 阅读全文

posted @ 2008-09-10 08:42 Gary Zhang 阅读(9611) 评论(56) 推荐(8) 编辑

2008年9月8日

十年回头看计算机

摘要:高中时候就对电脑的硬件很感兴趣。当时手上的资料不多,一般只有一两个星期才能在回家的时候路过县城的书店里买《电脑爱好者》、《电脑报》、《电脑商情报》、《中国电脑教育报》、《大众软件》、《大众硬件》、《微型计算机》等。一般是《电脑报》买最新的,因为信息最多,最及时,最重要的是最便宜的一本2.5元。其他的杂志一般都是等书店清货的时候才买,那时比较便宜一般也就2-3元。当然一次一般也就买一至两本。然后看很久。一般一本我都要看上三遍以上。经常是看得心潮澎湃的。恨不得马上就能得到一台这样高性能的电脑(虽然现在看起来已经很土了^_^)。 阅读全文

posted @ 2008-09-08 01:06 Gary Zhang 阅读(585) 评论(4) 推荐(0) 编辑

2008年9月7日

鼠标修复DoubleClickFix

摘要:我这个罗技工包鼠标用了三年了,近几日用的时候开如有些不正常。比如一段文本复制不了。选了之后却又马上消失了。打开文件夹的时候有时候是用单击有时候是双击。很是烦火。在网上查了一下这款软件“DoubleClickFix”解决了这个问题,很简单,很不错。。发出来有需要的也可以安装一下。 阅读全文

posted @ 2008-09-07 13:55 Gary Zhang 阅读(749) 评论(1) 推荐(0) 编辑

导航