2011-11-04 44 views
22

Tengo un archivo en formato XSD. ¿Cómo puedo convertirlo a una clase C#?¿Cómo puedo convertir el archivo XSD a C# Class

necesito referencia de clase en otras aplicaciones web donde tengo que hacer una llamada posterior según abajo:

var res = client.Post<Customer>("/customers", c); 
+0

duplicado Posible de [¿Cómo generar clases .NET 4.0 de xsd?] (http://stackoverflow.com/questions/5217665/how-to-generate-net-4-0-classes-from-xsd) –

Respuesta

52

Uso del XML Schema Definition Toolxsd.exe que se encuentra en las herramientas de marco para convertir el esquema en una clase serializable o conjunto de datos.

xsd file.xsd {/classes | /dataset} [/element:element] 
     [/language:language] [/namespace:namespace] 
     [/outputdir:directory] [URI:uri] 

Y en el ejemplo, mientras que la clase C# se generará en el mismo directorio que la herramienta xsd:

xsd /c YourFile.xsd 
+0

que, en este caso , da http://pastie.org/2809845 (solo para completar) –

+1

necesitas un '/ c' o'/classes' en tu comando, nota - y * no * necesitas el idioma, ya que C# es el predeterminado –

+0

@George Necesito el código C# para generar esto usando el enlace anterior directamente , ¿es posible o tengo que hacerlo después de descargar ese XSD primero? –

2

se puede hacer como esto ...

<xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'> 
<generateClasses language='CS' namespace='Namespace.subnamespace'> 
    <schema>FirstSchema.xsd</schema> 
    <schema>AnotherSchema.xsd</schema> 
    <schema>LastSchema.xsd</schema> 
</generateClasses> 
</xsd> 
+0

Me gusta dónde está esto va, pero ¿puede explicar qué está leyendo este archivo, o cómo produce los archivos C# resultantes? – QueueHammer

+0

para obtener detalles sobre cómo usar el archivo de parámetros avanzados, consulte aquí https://msdn.microsoft.com/en-us/library/x6c1kb0s(v=vs.110).aspx –

Cuestiones relacionadas