0

我有很多 BTS2010 单元测试来检查 XML 文件是否可以映射到平面文件。

我在 BTS2013r2 上开发了我的第一个此类测试,但在执行 TestableMapBase.TestMap(_inputFilename, _inputType, outputFilename, _outputType) 时,我收到错误“生成模式实例失败”

我使用反射器来调试 MS 程序集,并在 Microsoft.BizTalk.TOM.Adapter 的 CFrameworkSchemaTreeExtensions.cs 中达到以下行:

infoArray = instanceGenerator.GenerateInstance(文件名,xmlInstance);

在执行时,infoArray 填充了以下错误

ErrorInfo:十六进制值 0x00,是无效字符。第 2 行,第 1 位。”

在执行之前,我已经获取了 xmlInstance 的内容,粘贴到 Notepad++ 并使用 Hex 插件搜索空字符(十六进制 0x00),没有。

我在两台不同的 BizTalk 开发笔记本电脑上尝试了许多不同的 XML 输入到地图,并得到了相同的结果。

有没有人能够在 BTS2013r2 中成功运行 XML 到平面文件的测试?

今天我创建了最基本的解决方案(1 个 BizTalk 项目 + 1 个单元测试项目),以测试这是否真的是 Microsoft 错误。看起来确实是这样,因为我在第三台 BizTalk 开发笔记本电脑上运行这个非常简单的测试时遇到了同样的错误。我已将源代码添加到以下 github 存储库:https ://github.com/RobBowman/FFMapFailBTS2013r2

4

2 回答 2

0

确保它不是编码问题。在该位置找到 0x00 听起来输入文件是 UTF-16 格式,而处理器需要 UTF-8 或其他单字节编码。

于 2015-01-19T13:38:41.560 回答
0

Microsoft 已为此发布了一个修补程序 - 请参阅:https ://social.msdn.microsoft.com/Forums/en-US/cacecbfd-8b71-409c-bd59-2eed26950f25/test-map-to-flat-file-in- bts-2013r2-does-this-ever-work?forum=biztalkgeneral

于 2015-05-18T14:57:46.483 回答