Я использую XmlSerializer для службы WCF (в случае моей службы есть причины для этого). Но недавно я столкнулся с проблемой: я не могу найти простой способ сделать обязательным свойство ссылочного типа, то есть сделать так, чтобы его определение в XSD выглядело так:
<xs:element minOccurs="1" maxOccurs="1" name="Name" type="xs:string"/>
вместо этого:
<xs:element minOccurs="0" maxOccurs="1" name="Name" type="xs:string"/>
Вот код для собственности:
[XmlElement]
public string Name { get; set; }
Я знаю, что с DataContractSerializer я могу сделать это:
[DataMember(IsRequired = true)]
public string Name { get; set; }
и я получу нужную схему.
Есть идеи, как получить функциональность, аналогичную IsRequired, с атрибутами XmlSerializer?
Спасибо.