BizTalk动手实验(五)Map开发测试

更多内容请查看:BizTalk动手实验系列目录

                      BizTalk 开发系列

1 课程简介

通过本课程熟悉Map的相关开发与测试技术

2 准备工作

  1. 熟悉XML、XML Schema、XSLT等相关XML开发技术
  2. 新建BizTalk空项目
  3. 演示

3.1 基本操作

    1. 打开MapDev解决方案
    2. 在MapDev项目中新建Map映射
    3. 映射源和目标中分别选择MapDev.InputPO和MapDev.OutputPO

clip_image001

4. 如下图所示将映射源与目标的映射关系连接好,Loop组件在工具栏的Advanced Functoids中。

clip_image003

5. 右击映射文件,选择Test Map

clip_image004

6. , 在Visual Studio的输出窗口有相应的输出信息,点击相应的输出文件可以看到映射过后的文件。

3.2 使用脚本模块

    1. 将Advanced Functoids的Scripting拖到映射区域,将源的date与目标的date连接到Scripts两侧

clip_image005

    1. 双击Scripting模块,在脚本模块配置的脚本类型中选择Inline C#,将TestData文件夹下的FormatScript.txt中的C#脚本拷贝到内联脚本输入框中。

clip_image006

    1. 在输入配置中,新增一个输入参数,参数值为 yyyy/MM/dd ,用于将输入消息的值日期值进行重新格式化。

clip_image007

    1. 参照3.1.5的测试方法进行测试。在输出文件中可看到映射过后的文件其中date字段里的值已经按新的格式进行转换。

clip_image008

3.3 测试Map XSLT

    1. 右击Map文件选择Debug Map
    2. Visual Studio将会启动XSLT调试模式,调试方法类似于.NET代码开发

clip_image009

clip_image010

3.4 使用外部方法

    1. 在MapDev解决方案目录下新建一个C#类库项目MapHelper
    2. 修改MapHelper属性,添加btsdev.snk签名,
    3. 将如下代码复制到Post-build 事件命令行中
      CALL "%VS100COMNTOOLS%vsvars32.bat"
      gacutil /uf $(TargetName)
      gacutil /if $(TargetName)

 

clip_image012

    1. 将如下代码添加到类文件中

 

public class Common
{
public string Format(string paramDate, string paramExpress)
{
string responseDate = paramDate;
try
{
DateTime strDate = Convert.ToDateTime(paramDate);
responseDate = strDate.ToString(paramExpress);
}
catch { }
return responseDate;
}
}

 

    1. 生成项目并在MapDev项目中引用该项目,点击Map中的Scripting,将脚本模块配置的内联脚本删除
    2. 选择脚本类型为为外部类库,并选择刚才创建的方法

clip_image013

  1. 测试脚本以验证输出是否正确

posted on 2011-12-19 11:23  Gary Zhang  阅读(1606)  评论(1编辑  收藏  举报

导航