У меня есть служба WCF, и я не могу использовать DataContracts, поскольку мне нужно больше контроля над XML, полученным и отправленным этой службе. Поэтому я использую XmlRoot и XmlElement ... проблема, с которой я сейчас сталкиваюсь, заключается в том, что мой класс, в который десериализуется принимающий xml, и сериализованный ответ должны иметь одинаковое корневое имя, и когда я пытаюсь установить оба эти класса с:
[XmlRoot(ElementName = "myRoot")]
Я получаю сообщение о том, что корневое имя уже использовалось. Есть ли простой обходной путь для этого? Я попытался поместить свой класс ответа в отдельное пространство имен, но это не сработало.
Если некоторые переменные не заданы в моем классе ответа, который сериализуется, я не могу их сериализовать и вернуть в ответе ... есть ли опция, которую мне не хватает, чтобы сделать это ... Я смог сделать это с помощью DataContract, но не могу понять это с помощью XmlElements