Я тоже должен отправить информацию третьей стороне в указанном ими формате XML, я уверен, что это очень распространенная задача.
У меня есть набор файлов XSD, и, используя XSD.exe, я создал набор типов. Чтобы сгенерировать XML, я сопоставляю значения типов в моем домене с типами сторонних производителей:
public ExternalBar Map(InternalFoo foo) {
var bar = new ExternalBar;
bar.GivenName = foo.FirstName;
bar.FamilyName = foo.LastName;
return bar;
}
Затем я буду использовать XMLSerializer для генерации файлов, возможно, проверяя их по XSD перед их выпуском.
Этот метод очень ручной, и мне интересно, есть ли лучший способ, используя Framework или внешние инструменты для отображения данных и создания файлов.