1. 生成、部署项目
Biztalk的项目需要编译为强名称的程序集,才能部署到biztalk服务器上,biztalk项目部署到服务器上表现为一个biztalk的应用程序。
1.1. 生成强名称密钥文件
在“microsoft visual studio 2005”程序组里,选“visual studio tools”--“visual studio 2005 command promte”进入命令行模式。
导航到biztalk项目所在的文件夹
输入以下命令:sn –k biztalkHighway.snk
在biztalk项目所在的文件夹生成biztalkHighway.snk密钥对文件。
1.2. 设置biztalk项目属性
在解决方案资源管理器中,右键点击biztalkHighway项目,选择“属性”
在属性窗口左边选“通用属性”-“程序集”,右边“强名称”下的“程序集密钥文件”,点击旁边的按钮,找到上一步生成的biztalkHighway.snk密钥对文件,选择。
在属性窗口左边选“配置属性”-“部署”,右边“biztalk组”下的“应用程序名称”,输入:BizTalkHighway。这个应用程序名称就是部署到biztalk服务器后的应用程序名。
1.3. 生成部署项目
在解决方案资源管理器中,选中BiztalkHighway项目,鼠标右键,选“生成”。
在解决方案资源管理器中,选中BiztalkHighway项目,鼠标右键,选“部署”。
2. 生成web services
这一步要把上面的biztalk项目中的Web_Port端口暴露为web services,这个工作由biztalk本身提供的biztalk web services发布向导来做。
在biztalk程序组中启动“biztalk web services发布向导”。
欢迎页面后,向导需要选择是将业务流程发布为web serivces还是将架构发布为web serivces:
这里选择将前面生成的业务流程发布为web services。
点击“下一步”
选择biztalk程序集,是要指定上面项目编译后的dll文件,在biztalk项目文件夹的bin下找到BizTalkHighway.dll文件,选择。
点击“下一步”
选择业务流程端口,这里会列出选择的业务流程中所有的接收端口(因为只有接收端口才能发布为web services,包括单向的接收端口,双向的接收端口),选择需要发布的端口。本项目只有一个可以发布的端口,默认已经被选择。
默认的一个端口biztalk的web services向导生成一个asmx文件,端口中的一个操作对应一个WebMethod。
一般在业务流程中一个端口包含一个操作,也就是一个接收端口对外暴露为一个WebMethod。大多数情况下,一个web services对外提供多个WebMethod,一般选择“将所有的端口合并到一个web services中”将所有端口都归入到一个asmx文件中,以便在一个web services访问多个WebMethod。
点击“下一步”
指定web services属性,这里设置web services目标命名空间为:http://tempuri.org/
其他SOAP选项不用选,本项目不使用附加的SOAP标头
点击“下一步”
指定要生成的asp.Net web services的参数,位置指的是web services发布URL,就是别的系统访问此web services的地址,如图设置。
如果允许匿名访问就选择“允许匿名访问web services”。本项目允许匿名访问
选择“在以下应用程序中创建biztalk接收位置”,并在下拉列表中选择前面部署的“BizTalkHighway”项目。这个选项实际上是生成web services的物理端口,这个端口等会要跟biztalk项目业务流程中的“Web_port”逻辑端口绑定。
点击“下一步”,完成向导。
biztalk web services发布向导在http://localhost/BizTalkHighway%5FProxyWebService/已经生成了一个web services,在浏览器中输入上名的URL,可以看到这个web services
3. 配置biztalk应用程序
接下来的任务是要配置biztalk应用程序,新建物理端口,将物理端口和逻辑端口绑定。
在biztalk程序组中,打开“biztalk server 管理”
在biztalk管理界面的左边,如下图找到应用程序中的“BizTalkHighway_project”,这就是之前部署到biztalk server的应用程序。
在左面的窗口业务流程选择“Orchestration_1”,右边主机在下拉列表中选择“BiztalkServerApplication”。
绑定部分,就是将逻辑端口跟物理端口进行绑定。
在输入端口部分,本项目有一个入站逻辑端口“Web_Port”,在对应的接收端口(物理端口)中选择“WebPort_BizTalkHighway_ProxyWebService/WebService_BizTalkHighway”,这个物理端口就是web services向导生成的web services的物理端口。
在输出部分,是sql适配器的物理端口,需要新建。
选中出站逻辑端口中“GetListIecms_Port”端口,在右边的下拉列表中选择“新建发送端口”,弹出发送端口对话框。
传输类型选“SQL”,这个端口是sql适配器。点击旁边的“配置”按钮
连接字符串指向本项目使用的数据库
文档目标命名空间设为biztalk项目中sql适配器向导生成的那个xsd文件的目标命名空间http://SQLReceive
响应文档跟元素名称,设为上面xsd文件中响应根元素“GetHighwayData_ResponseRoot”
点击“确定”
Sql适配器是使用xmlsql访问sql server的,所以
发送管道选:XMLTransmit
接收管道选:XMLReceive
点击确定关闭发送端口窗口,回到配置应用程序窗口,到此应用程序已配置好,点击“确定”。
4. 运行biztalk应用程序
在biztalk管理界面,在“BizTalkHighway”上点击右键,选“启动(S)…”
之后,直接点击“启动”,biztalk开始启动应用程序的过程
三.测试biztalk的项目
上面的biztalk项目对外公开了一个web services的方法,下面建一个winform的测试项目来引用这个web services,然后调用它的WebMethod,获得的结果,显示在一个dataGridView中。
1. 新建winform项目
2. 引用web services
在解决方案管理器中,在TestHighway项目上点击鼠标右键,选“添加web引用”,弹出添加web应用对话框,把前面web services向导生成的web services的URL输入到URL中,点击“前往”按钮
3. 添加代码
在Form1窗体中添加一个dataGridView控件和二个button控件
单击button1,输入以下事件程序
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
4. 运行结果
![](https://i-blog.csdnimg.cn/blog_migrate/4d62101f43c5cb43874a79e74270a1e6.gif)