Я получил схему, содержащую несколько корневых узлов от клиента, и пример XML-файла, который содержит один корневой узел.Узлы в схеме каждый ссылаются друг на друга, начиная с верхнего узла.Я создал карту, которая использует эту схему для использования в BizTalk, и развернул карту и схемы.Однако при отправке документа через BizTalk возникает следующая ошибка:
StackTrace: в Microsoft.BizTalk.Component.Interop.DocumentSpec.get_TypeMetadata ()
в Microsoft.BizTalk.Component.Interop.DocumentSpec.get_DocType ()
в Microsoft.BizTalk.Component.MsgTypeSchema..ctor (IPipelineContext pipelineContext, схема SchemaList envSpecName, SchemaList docSpecName) в Microsoft.BizTalk.Кодировка, Boolean saveEnvelopes, Boolean allowUnrecognizedMessage, Boolean validateDocument, SchemaList envelopeSpecNames SchemaList, SchemaList documentSpecNames, IFFDocumentSpec docSpecType, S
Я не уверен, что некоторые сообщения выглядят как пропущенные, но оно будет отсутствовать, но некоторые из них выглядят как пропущенныенеобходимые метаданные. Сообщение также приостанавливается.
Чтобы дать вам представление о том, как выглядит схема в Visual Studio:
В BizTalk каждый из узлов создается как отдельная схема с другим корневым узлом, но с тем же целевым пространством имен, именем и сборкой.Почему BizTalk не может направить документ в правильную схему?Нужно ли внести некоторые изменения в текущую схему?Все отправляемые документы имеют один корневой узел с включенным целевым пространством имен.
Я попытался повторно развернуть карты и схемы, перезапустить экземпляры хоста и удалить / добавить целевое пространство имен, пока ничего не получалось.В BizTalk есть несколько схем с тем же корневым узлом, но с другим целевым пространством имен.Я не уверен, что это может вызвать проблемы.