“迁移”Functoid
将映射从以前版本的 BizTalk Server 迁移到 BizTalk Server 时,也会迁移映射中包含的任何 functoid。 如果迁移的 functoid 不包含 脚本 functoid,则不需要执行其他迁移任务。 但是,如果映射包含 脚本 functoid 或自定义 functoid,则可能需要执行其他步骤。
在以前版本的 BizTalk Server 中,脚本 functoid 中包含的所有自定义脚本都是内联编写的。 也就是说,在创建该 functoid 后,该 functoid 在运行时调用的所有脚本都与该 functoid 一起存储。 如果要将同一脚本与不同的 functoid 配合使用,则可以将其从一个脚本 functoid 复制并粘贴到另一个 , 或者从头开始重新编写脚本。
迁移映射时,BizTalk Server复制包含 functoid 的现有内联脚本。 但是,并非所有脚本都可以正常运行。 BizTalk Server使用 Visual Basic .NET 和 JScript .NET,而不是以前版本中使用的 VBScript 和 JScript。 这些语言的 .NET 版本在语法上有一些更改。
注意
请务必在迁移后测试 脚本 functoid。
需要重写自定义 functoid。 BizTalk Server要求自定义 functoid 使用 .NET Framework。 因为,在该版本中无法使用基于 COM 的早期版本自定义 functoid。 您可以重新编写自定义 functoid,以使用 .NET Framework。 有关自定义 functoid 的示例代码,请参阅自定义 functoid (BizTalk Server 示例) 。
另一种方法是将自定义 functoid 的功能包装在外部程序集中,并通过 Scripting functoid 调用此程序集。 以下部分介绍了此过程。
迁移自定义 functoid
使用 .NET 语言(如 Microsoft Visual Basic .NET、JScript .NET 或 Microsoft Visual C# .NET)重新创建该 functoid 的功能。
创建一个程序集以包含该新功能。
在全局程序集缓存 (GAC) 中注册该程序集。
注意
若要在全局程序集缓存中注册程序集,程序集必须要具有强名称并且已签名。 有关注册程序集的详细信息,请参阅 Visual Studio 组合集合中的“全局程序集缓存”。
在包含 Scripting functoid 的映射和包含重写功能的程序集之间创建引用。
配置 Scripting functoid 的 Script 属性。 此属性确定 脚本 functoid 在运行时调用的脚本。 此属性的值必须与自定义脚本的转换目标语言相匹配。 有关如何配置 Script 属性的详细信息,请参阅 编辑 Functoid 属性和输入参数。 另请参阅 脚本 Functoid。
使用 “脚本” functoid 生成包含映射的 BizTalk 项目。
验证和测试映射。