XML 反汇编程序使用以下算法来确定用于处理传入消息的编码:
如果数据中存在字节顺序标记,则根据数据确定编码信息。
否则,如果设置了 IBaseMessagePart.Charset 属性,则使用指定的编码。
否则,如果 XML 文档中存在 XML 声明,则使用指定的编码,前提是 XML 声明为 ANSI。
否则,将使用 UTF-8 编码。
对于上述情况 2、3 和 4,在 XML 反汇编程序确定编码后,它会将其保存在 XMLNorm.SourceCharset 属性中的消息上下文中。 XML 反汇编程序管道组件生成的消息始终使用 UTF-8 编码。 对于事例 1,不会保留从字节顺序标记确定的编码。