0

Я пытаюсь вызвать конвейер получения из оркестровки, чтобы поймать любую ошибку flatfile_to_xml.BizTalk ExecuteReceivePipeline не может принять параметр XmdlDocument

После поиска учебников процесс казался довольно простым. Добавленных библиотеки, создали свой INPUTMSG типа XMLDOCUMENT к inglobe любой не-Xml полезной нагрузки (в моем случае содержания моего file.txt) и создали атомную сферу, содержащую выражение:

Microsoft.XLANGs.Pipeline.XLANGPipelineManager 
    .ExecuteReceivePipeline(typeof(namespace.pipelineName), msgIN); 

Слишком плохо я что ExecuteReceivePipeline не может принять XmlDocument, пока он принимает только файл Microsoft.XLANGs.BaseType.XLANGMessage).

Cannot connvert from 'System.Xml.XmlDocument' to 'Microsoft.XLANGs.BaseTypes.XLANGMEssage' 

Почему это, и как я могу добиться того, чего я пытаюсь добиться?

+0

Зачем вам нужно это делать в оркестровке? Просто подключите конвейер к порту и настройте маршрутизацию для сообщений об ошибках. Затем подпишитесь на неудавшиеся сообщения, чтобы обработать те, которые не удалось – Dijkgraaf

+0

Потому что меня попросят создать новый файл для отправки во второй каталог. Файл содержит сведения об исключении, этап обработки (область действия, ясность) и исходные сообщения (текстовое содержимое), чтобы компания, отправившая файл, могла сравнить причину ошибки с исходным сообщением об ошибке и отправить новый исправленный. Из классического конвейера я могу только подписаться на messageType плоского файла и сохранить его, не могу сделать это с подробностями исключения. Если бы я мог, я все равно закончил бы разделенные msgs. – strongmmc

ответ

0

Хорошо, теперь это работает, и я не знаю, почему. Сначала msgIN типа XmlDocument не был принят как допустимый параметр. Я тогда создал MsgType типа XmlDocument и назначен его в качестве типа сообщения, так что вызов:

ExecuteReceivePipeline(typeof(namespace.pipelineName), msgIN) 

будет действительным. после многих перестроить и развернуть я переключился обратно на msgIn как XmlDocument ... и он работал по назначению ...

Я не понимаю, но это не первый раз, когда восстановление или закрытие и повторное открытие из VS решил мои предвестники. Спасибо, кто нашел время ответить!

0

Вы должны использовать переменную переменной типа XmlDocument.

Похоже, вы используете переменную типа XmlDocument.

+0

Это не тот случай. Я ** начал ** с использованием сообщения типа XmlDocument ** и ** получил ошибку на первом месте. Теперь я использую Msg с частью сообщения типа XmlDocument, потому что (я этого не знал) Msg по существу является XLANGMessage, который переносит многочастный экземпляр любого типа, включая XmlDocument. Моя оркестровка теперь работает, если я не пытаюсь поймать какую-либо ошибку конвейера, иначе я получаю исключение XmlException типа _Data на корневом уровне. Строка 1, позиция 1_ – strongmmc

Смежные вопросы