.net - tool - XSDObjectGen.exe frente a XSD.exe
xsd out (4)
Parece que puedes usarlo con VS2005 al menos (de acuerdo con este artículo, de todos modos )
Simplemente agréguelo a su colección de herramientas externas de VS2005 en "Herramientas >> Herramientas externas ...".
Establezca sus parámetros como los siguientes
- Para VB: $ (ItemPath) / l: vb /f:$(ItemFileName).vb / c / d / t
- Para C #: $ (ItemPath) / l: cs /f:$(ItemFileName).vb / c / d / t
Parece que XSD y XSDObjectGen producirán diferentes clases. De hecho, los comentarios en este artículo de Rick Strahl dicen " producen clases muy diferentes " en el artículo aquí .
¿Alguien puede decirme cuál es la diferencia entre XSDObjectGen.exe y XSD.exe?
¿Hay alguna forma de hacer que XSDObjectGen.exe funcione en dot net 2.0?
Como alternativa, hay Xsd2Code . Algunas caracteristicas:
- Generar clase parcial.
- Admite colecciones genéricas y personalizadas (List, ObservableCollection, MyCustomCollection).
- Admite propiedades automáticas cuando no se requiere un conjunto especial.
- Puede generar atributos WCF (DataContract / DataMember).
- Soporte de tipo anulable.
- Enmascare el campo privado en IDE (use el atributo EditorBrowsableState.Never).
- Genera asignación de objetos en constructor.
- Implemente INotifyPropertyChanged para habilitar DataBinding para wpf o Silverlight.
- Mejora la productividad con el complemento visual studio.
- Genere documentación resumida a partir de la anotación xsd.
- Compruebe si los valores nuevos y anteriores int setter son los mismos antes de plantear el evento cambiado propiedad.
- generación de opciones de copia de seguridad en el encabezado cs o vb.
- Guarde y cargue el documento Xml en el almacenamiento de archivos aislado para la aplicación Silverlight (nuevo en 3.0).
- Generar código CS, VB o CPP.
- Serializar / deserializar el objeto.
- Guardar en archivo y cargar desde el archivo.
- Incluye Xsd2CodeCustomTool.
La diferencia es:
- La herramienta de definición de esquemas XML (
xsd.exe
) es parte del SDK de Visual Studio y tiene una funcionalidad básica. - La herramienta XSD Sample Code Generator Tool (
XSDObjectGen.exe
) es una herramienta más completa con funciones más avanzadas y se publica por separado.
Para darle una idea, aquí hay una lista de características resumidas para XSDObjectGen.exe
:
- Soporte para los constructos de esquema XML más populares
- Comportamiento del enumerador y de la colección para elementos repetitivos
- El modelo de programación que coincide con el esquema
- Construcción automática de subclase
- Nombre de prevención de colisión
- Integración de Visual Studio IDE
- Lógica de manejo especial para tipos DateTime
- Soporte de esquema multiparte
- Serialización del espacio de nombres XML
- Soporte opcional y secuencia
- Elección de soporte
- Grupo de sustitución
- Método MakeSchemaCompliant
- Manejo de tipo de referencia no opcional
- Cumplimiento del perfil básico de WS-I.org
- Soporte de lenguaje multi-programación
- Eventos transversales en profundidad
Para obtener más detalles sobre estas funciones, consulte el archivo de documentación XSDObjectGen.doc (disponible en C:/Program Files/XSDObjectGenerator
después de instalar la herramienta).
En un nivel puramente técnico:
XSD.exe utiliza Arrays
XSDObjectGen da un pequeño paso adelante y usa ArrayLists
.
XSD2Code salta adelante con el uso de Generics
.
Si usa .NET 2.0 y superior, es preferible utilizar XSD2Code.