Estoy usando XmlSerializer para escribir y leer un objeto a xml en C#. Actualmente uso los atributos XmlElement
y XmlIgnore
para manipular la serialización del objeto.¿Puedo dejar de deserializar con XmlSerializer en C# si no se encuentra un elemento?
Si a mi archivo xml le falta un elemento xml que requiera, mi objeto todavía se deserializa (xml -> object) muy bien. ¿Cómo señalo (preferiblemente a través de Atributos) que cierto campo es "requerido"?
Aquí es un método muestra de lo que estoy utilizando actualmente:
[XmlElement(ElementName="numberOfWidgets")]
public int NumberThatIsRequired {
set ...;
get ...;
}
Mi solución ideal sería añadir algo así como un atributo XmlRequired
.
Además, ¿hay una buena referencia de qué atributos están disponibles para manipular el comportamiento de XmlSerializer?
Pregunta msdn similar [aquí] (http://social.msdn.microsoft.com/Forums/eu/xmlandnetfx/thread/a134471c-6b20-433e-8dd4-d153cac29810) que también explica que la validación es lo que estás intentando para hacer – KCD
si no tiene el elemento 'numberOfWidgets' en el XML, ¿qué tendrá en la propiedad NumberThatIsRequired? ¿cero? –