Problema: Necesito serializar mis datos de una forma diferente a como lo hace el serializador que usa WCF (DataContractSerializer), ya sea porque sus opciones son limitadas (no permite usar atributos en el XML) o porque necesito una estructura diferente en el XML a la que me ofrece el serializador.
Solucion: Proveer a la clase a serializar de un serializador a medida, al que llamara WCF. Para ello hacemos que la clase a serializar implemente el interfaz System.Xml.Serialization.IXmlSerializable. Deberemos implementar el metodo WriteXml donde podremos crear un XML a partir de la clase a mano y a nuestro gusto. (Nota: estaremos obligados a implementar tambien el metodo GetSchema, pero bastara con añadir una linea con “return null”
Etiquetas: xml