了解BizTalk Server 2004 (八)
如何在映射中增加一个Functoid?
在BizTalk的映射中增加一个新的Fumctoid是一件有趣的事,首先建立一个新的项目文件和两个新的架构文件:
1, 项目名:AddFunc.btproj;
2, 架构文件名:OrderItems.xsd, Purchase.xsd
然后建立一个映射文件,名为OrderItemsToPurchasemap.btm; 具体的架构内容和映射关系如下图:
这里要解释的是Unit的总价是经过TotalUnits与Price相乘后所得,TotalUnits和Price的数据类型被定义为xs:int类型,但是在目的架构中Total的属性是String类型,所以我们需要增加一个Scripting Functoid把Integer转换为String:
右键点击Scripting Functoid选择属性,会看到其Input属性为Multiplication, 即TotalUnits和Price相乘的结果,然后选择Script及Inline C#,输入以下代码:
public string IntToString(int param1)
{
return param1.ToString();
}
选择OK, 即完成了一个增加Functoid的工作。
Functoid: 执行特定计算或数据处理的可执行模块,在构造 BizTalk Server 映射时可以图形方式使用该模块,从而提供比 XSLT 自身提供的转换还要丰富的转换基准。