У меня есть клиент WCF, которому нужно сгенерировать запрос, содержащий этот фрагмент XML:
<reason xsi:nil="true" nullFlavor="NA" typeCode="RSON" />
Схема определяется сервером и не находится под моим контролем. Сгенерированный прокси-код имеет класс для элемента причины, содержащий (помимо прочего) свойства nullFlavor
и typeCode
. Прокси-сервер использует XmlSerializer.
Как я могу создать такой фрагмент? XmlSerializer испускает атрибут xsi:nil
, только если соответствующий член имеет значение null. И если он нулевой, он не может иметь свойства, которые будут выдаваться как атрибуты!
Кстати, фрагмент допустим в соответствии со спецификацией экземпляра схемы XML, в которой говорится, что элемент nil не может содержать никаких дочерних элементов или внутреннего текста, но может содержать атрибуты.