设计 BizTalk 应用程序的国际化注意事项

强烈建议在开发国际BizTalk Server应用程序时查看以下已知问题。

计算机名称的字符限制

不支持在名称中包含以下集外字母的计算机上安装BizTalk Server:字母 (A-Z、a-z) 、数字 (0-9) 、连字符 ( ) ,以及下划线 ( _ ) 。 仅支持包含此集中字母的计算机名称。

由于字体和字体回退设置不正确,字符未正确显示或根本未显示

在 Microsoft Visual Studio 中托管BizTalk Server工具) 显示字符 ((如捷克字符)时,可能会遇到问题。 要解决这些问题,可能需要修改 Visual Studio“选项”选项卡中提供的字体设置,选择另一种您知道支持要显示的字符的字体。 可以选择 Tahoma 或 Microsoft Sans Serif 作为提供字体回退功能的默认字体。

代理项对字符在 BizTalk Server 管理控制台和其他 BizTalk Server 工具中显示为方块

可能无法在BizTalk Server管理控制台和其他BizTalk Server工具中显示代理项对字符。 代理项对是单个抽象字符的编码字符表示形式,由两个代码单元组成的序列组成。 请确保在系统上安装了适当的字体, (它包含在 Office XP 和 2003) 的中文版本中。 可能还需要更改具有此类功能的工具中的字体选项 (,例如 Visual Studio) 。

在其他没有字体设置选项的工具中,代理项对字符将显示为正方形,例如管理控制台。 如果看到正方形,则表示字符未损坏;它们只是由于缺乏字体支持而无法正确显示。

Web 服务字符限制

如果计划将业务流程发布为 Web 服务,可能会遇到业务流程名称和端口名称中使用的字符问题,因为这些名称用于 Web 服务文件名 (.asmx 文件) 和 Web 服务发布向导中的虚拟目录。 只有 Microsoft Internet 信息服务 (IIS) 7.0(包括在 Microsoft Windows Server 2008 和 Windows Vista 中)完全支持 Unicode 字符。 因此,如果使用早期版本的 IIS 或 Windows,则业务流程、端口、Web 服务和虚拟目录名称的名称必须仅包含 Windows (语言版本支持的 ANSI 字符,例如,英语版本的 Windows) 上不允许使用日语字符。

另请注意,Visual Studio 中 Web 服务的项目名称仅限于 ASCII 字符。

使用不同的文档编码

BizTalk Server支持许多不同的 XML 和平面文件文档编码,例如 UTF-16、UTF-8、简体中文 GBK、简体中文GB18030等。

对于入站文档,BizTalk Server可以识别 XML 文档中的编码声明,例如“<?xml version=”1.0“ encoding=”GB2312“ ?>”。 平面文件架构具有 Code Page 属性,用于指示入站平面文件文档的编码。

对于出站文档,XML 和平面文件汇编程序使用 Target charset 属性。 如果指定了此属性,BizTalk Server会将出站文档转换为指定的字符集,而不考虑原始文档。 如果未设置 Target charset 属性,XML 将使用 UTF-8 协议,平面文件使用平面文件架构中指定的代码页。

代码从不受支持的代码页转换为 Windows 代码页

若要实现从不受支持的代码页到 Windows 代码页的代码转换,必须创建自定义管道组件。

字节顺序标记对文档编码的影响

BizTalk Server确定字符编码,并为平面文件和 XML 消息生成具有不同特定字符编码的文档。

架构编辑器可能包含多种语言的属性

在“架构编辑器属性”窗口和 XML 源代码中显示的 XML 架构定义语言 (XSD) 属性名未进行本地化,在所有本地化版本中均以英语显示。 其他属性以本地语言显示。 例如,在 BizTalk Server 的简体中文版本中,架构属性为英文,但其他属性以中文显示。

平面文件中的区域设置相关数据

许多区域设置使用与 XML 标准中定义的格式不同的格式表示数据,例如日期、时间、数字和货币。 例如,多个区域设置使用句点 (.) 以外的小数分隔符,因此数字 5 和 3 个季度可以表示为 5,75。

在BizTalk Server中,平面文件(日期和时间除外)的所有字段都被视为字符串,以便分析可以成功。 但是,使用 XML 验证时,生成的 XML 消息在针对架构进行验证期间失败。

对于日期和时间字段,分析程序尝试使用自定义日期或时间格式将字段值分析到 DateTime 实例(如果已定义),并用 XML 格式写入它,如果未定义日期或时间格式,则使用原始值作为字符串。 同样,如果使用 XML 验证,如果未使用自定义日期或时间格式,并且平面文件消息中使用的字段值未采用正确的 XML 日期或时间格式,则生成的日期或时间可能会失败验证。

请注意,还可以创建自定义管道组件或映射来更新字段值以生成有效的 XML。

BAM 定义语言支持

在部署 BAM 定义 XML 文件之前,必须确保用于创建此文件的语言与部署该文件的计算机的区域设置相匹配。 如果文件和计算机设置不匹配,必须先重新启动用于运行 BM.exe 的计算机。

注意

BAM 定义 XML 文件不能包含多种语言的文本,除非语言都使用相同的代码页,或者只包含两种语言,其中一种语言是英语。

另请参阅

在管道组件中实现字符编码
在反汇编程序管道组件中处理编码
平面文件反汇编程序管道组件中的字符编码
平面文件汇编程序管道组件中的字符编码
XML 汇编程序管道组件中的字符编码
XML 反汇编程序管道组件中的字符编码