扩展捕获和消息修复解决方案

本帮助中的 MT103 端到端教程演示如何构建一个用于订阅失败的 SWIFT 消息的 BizTalk 编排。

MT103 端到端教程中的协调使用帮助类ErrorExtractor的静态方法,将错误部分和正文提取为字符串。 然后,编排将各部分写入单独的文件。

由于失败消息的错误部分是管道组件构造的 ErrorCollection 的序列化,因此可以反序列化集合并使用它自动执行更多错误报告和处理。 以下 Microsoft Visual C# 代码片段展示了如何将失败消息的错误部分反序列化,并遍历集合中的解析错误。 代码片段省略命名空间的可读性限定:

// instantiate an appropriate XmlTextReader  
// xm contains the message  
string sError = ErrorExtractor.GetErrorPartAsString(xm);  
StringReader sRdr = new StringReader(sError);  
XmlTextReader xRdr = new XmlTextReader(sRdr);  
  
// deserialize the collection  
ErrorCollection eC = ErrorCollection.GetErrorCollection(xRdr);  
  
// loop over the parsing errors in the collection  
IEnumerator pEnum = eC.GetParseErrorEnumerator();  
while(pEnum.MoveNext())   
{  
  // pEnum.Current() returns a ParseError object for processing  
}  
  

ErrorCollection 包括按类型循环访问错误的方法,以及循环访问集合中的所有错误的方法。 有关 ErrorCollection 的详细信息,请参阅 ErrorCollection 成员。

另请参阅

失败的消息和错误集合对象