SchemaValidator
使用 SchemaValidator 实用工具可以排除消息实例中的故障。 如果所收到的消息验证失败,则可以运行 SchemaValidator 实用工具来确定失败的根源。
如果你使用的是包含架构 .dll 文件的程序集并且没有架构 .xsd 文件,则可以使用此实用工具。 通过 SchemaValidator 实用工具,可以使用架构 .dll 文件进行验证。
在 SDK 中的位置
<驱动>\Program Files (x86) \Microsoft BizTalk <version> Accelerator for RosettaNet\SDK\SchemaValidator
生成和运行 SchemaValidator
生成 SchemaValidator 实用工具
打开命令提示符。
移动到 <drive>\Program Files (x86) \Microsoft BizTalk <版本> Accelerator for RosettaNet\SDK\SchemaValidator。
在命令提示符下,键入 sn -k SchemaValidator.snk,然后按 Enter。
启动 Microsoft Visual Studio 2012。
在“ 文件 ”菜单上,指向“ 打开”,然后单击“ 打开解决方案”。
移动到 <drive>\Program Files (x86) \Microsoft BizTalk <version> Accelerator for RosettaNet\SDK\SchemaValidator,选择“ SchemaValidator.sln”,然后单击“ 打开”。
在“解决方案资源管理器”中,右键单击“SchemaValidator”,然后单击“属性”。
在 “MessageInspector 属性 ”页中,单击“ 签名 ”选项卡,然后单击“ 为程序集签名 ”复选框。 在“选择强名称密钥文件”中选择“SchemaValidator.snk”。
单击“ SchemaValidator.cs”。
在 中的以下现有代码行中
Main
键入相应的消息实例路径:const string xmlInstancePath = @"..\..\Sample3A4.xml";
将 中的
Main
以下现有代码行替换为对 RNPIP 程序集的引用,然后选择相应的架构:_3A4_MS_V02_02_PurchaseOrderRequest BTSSchema = new _3A4_MS_V02_02_PurchaseOrderRequest();
右键单击“ SchemaValidator”,然后单击“ 生成”。
删除 <! ,将消息实例修改为要测试的消息实例DOCTYPE...> 标记,指定 XML 实例标头中的 DTD 文件。
在消息实例的根节点下,添加要对其进行验证的架构的 XML 命名空间。
注意
有关可供 SchemaValidator 实用工具验证的架构示例,请参阅 drive>\Program Files (x86) \Microsoft BizTalk <版本> Accelerator for RosettaNet\SDK\SchemaValidator 中的 < Sample3A4.xml。
在 Visual Studio 中,单击“ SchemaValidator.cs”,然后按 Ctrl 和 F5 运行该实用工具。
注解
由于 BTARN SDK 包含 SchemaValidator 代码,因此可以将逻辑添加到实用工具。 例如,可以将其做成命令行实用工具。