本主题提供地图的故障排除策略和问题详细信息和解决方法信息。
故障排除策略
验证地图
这听起来可能很明显,但在整个开发过程中,应始终在不同的点验证地图。 这有助于在开发周期的早期识别设计、逻辑和架构问题,以便于修复它们或找到替代解决方案。
验证 BizTalk 映射
在解决方案资源管理器中,打开要验证的映射。
在解决方案资源管理器中,右键单击映射,然后单击“ 验证映射”。
在“输出”窗口中,验证结果。
注释
验证映射时,不会检查测试实例数据,以查看它是否违反了架构中定义的任何数据类型。 在测试映射或验证 BizTalk 编辑器中的实例数据时,可以检查实例数据。
查看为您的地图生成的 XSLT
通常,检查映射编译器生成的 XSLT 很有用。 检查 XSLT 的一些好处包括:
如果您使用循环或自定义函数,这将更有助于您理解如何执行循环以及如何调用自定义函数。
如果您有一张复杂的地图,查看 XSLT 将帮助您了解地图如何被转换为一个转换过程,并可能为您提供有关如何更好地构建、替换或简化某些部分的见解。
如果你正在使用自定义脚本或其他构件,查看 XSLT 可以帮助你了解各种脚本、构件与地图其他部分如何交互。
幸运的是,查看地图的 XSLT 是一个简单的过程。
查看映射编译器生成的 XSLT
在 Visual Studio BizTalk 项目中,单击 “解决方案资源管理器 ”选项卡,右键单击映射,然后单击“ 验证映射”。
滚动“输出”窗口以查找 XSL 文件的 URL。 按 Ctrl 并单击 URL 以查看文件。
如果决定手动自定义映射,则可以修改映射编译器生成的版本。 映射器不会显示更改,下次编译解决方案时更改将会丢失。
使用 <mapsource 为特定场景调整地图>
可以通过直接在映射源 (.btm) 文件中修改 mapsource 元素的属性来修改 Mapper 的某些默认行为。 目前有三种行为可以修改:
优化值映射 functoid 代码生成。 您可以修改控制变量何时与
if
语句一起使用的行为。容纳占用空间大的架构。 可以更改大型映射中使用内部编译器节点的方式。
使用循环、条件和值映射功能块来管理 for-each 的用法。 可以控制语句
xsl:for-each
在目标架构中使用的位置。有关修改 mapsource 的详细信息,请参阅使用 <mapsource> 管理默认映射器行为。