2010-02-09 7 views
8

Intenté usar xsd.exe para convertir un archivo .xsd en una clase C#. Funcionó, pero todavía no estoy muy seguro de cómo usar esta clase. Tiene varios atributos de nivel de clase, pero el más interesante es System.Xml.Serialization.XmlTypeAttribute. ¿Qué clase usa ese atributo?Cómo usar la salida xsd.exe/c

¿Hay una manera simple de convertir una instancia de esta clase en una cadena de XML?

Respuesta

6

Súper sencillo. Me encanta la herramienta xsd. Me he tomado algunas libertades a continuación.

//From xml to object 
YourRootType inst = new XmlSerializer(typeof(YourRootType)).Deserialize(XmlReader.Create("some.xml")); 

//From object to xml 
Using(FileStream fs = new FileStream("some.xml", FileMode.Create)) 
    new XmlSerializer(typeof(YourRootType)).Serialize(fs, inst); 
0

Sí. Mire [y StringWriter si lo desea].

0

Usa las clases como clases normales. Luego, cuando los serialice en XML, el XML se validará con el esquema. También puede tomar XML que valide contra el esquema y deserializarlo nuevamente en instancias de las clases.

Cuestiones relacionadas