“Conocimientos Programación>Lenguajes De Programación

Cómo utilizar XSD en Net

2015/7/25
XML Schema Definition , XSD , es el estándar más ampliamente aceptado para definir la estructura de los documentos XML . Los esquemas pueden definir restricciones, opcionales y atributos requeridos dentro de un documento XML. . Net permite la validación de XML mediante uno o más esquemas antes de procesar el contenido . Validación de XML reduce el manejo de excepciones cantidad que debe realizarse en el código y captura los errores en el formato de los datos que de otro modo podrían pasar por alto. Cosas que necesitará
Visual Studio 2008 o superior
conocimientos de nivel intermedio . Programación Net
Ver Más instrucciones
XML Validación Uso XmlReaderSettings
1

Crear un nuevo proyecto de C # del tipo deseado en Visual Studio. Si desea agregar la validación XML a un proyecto existente , puede saltarse este paso.

2 Abra el cuadro de diálogo " Agregar nuevo elemento " haciendo clic en " proyecto" y haga clic en " Agregar clase . "
3

Especifique un nombre para la nueva clase que se adhiere a los estándares y prácticas de codificación de nombres.

4 Haga clic en el proyecto en el Explorador de soluciones para visualizar el menú proyecto.
5

Seleccione " Agregar referencia " en el menú para mostrar el cuadro de diálogo "Add Reference " .
6

Seleccione System.XML de la lista de componentes y haga clic en el botón "Select" . A continuación , haga clic en " Aceptar".
7

Agregar un método a la nueva clase con el siguiente código :

privado ValidateDocument bool ( string xmlFile , cadena xsdFile )
< p > {

XmlReaderSettings configuración = new XmlReaderSettings { ValidationType

= reader = XmlReader.Create ( xmlFile , configuración ) ;

tratar


{ while ( reader.Read ());

return true ;

}

catch ( XmlSchemaValidationException ex )

{

//indica que se produjo un error de validación

return false ; .

}

}

Este código carga XML en un XmlReader y un esquema XML en un XmlSchemaSet. Todos los atributos y los elementos del documento XML se validan cuando se lee el documento , no hay necesidad de visitar los elementos individualmente. Si el documento XML no es válido un XmlSchemaValidationException es lanzada. La excepción incluye un mensaje de error , número de línea y el lugar donde se cometió el error. . El proceso se detiene en el primer error encontrado

Si desea procesar todo el documento y ver los errores , y no sólo el primer error , puede agregar un controlador de errores para el evento ValidationEventHandler usando el siguiente código :

settings.ValidationEventHandler + = ValidationHandler ;

ValidationHandler static void ( object sender , ValidationEventArgs e)

/evento /proceso

{ aquí

}
Validación de XML con LINQ
8

Crear un nuevo proyecto de C # del tipo deseado en Visual Studio. Si desea agregar la validación XML a un proyecto existente , puede saltarse este paso.
9

Abra el cuadro de diálogo " Agregar nuevo elemento " haciendo clic en " proyecto" y haga clic en " Agregar clase . "
10

Especifique un nombre para la nueva clase que se adhiere a los estándares y prácticas de codificación de nombres.
11

Haga clic en el proyecto en el Explorador de soluciones para mostrar el proyecto menú.
12

Seleccione " Agregar referencia " en el menú para mostrar el cuadro de diálogo "Add Reference " .
13

Select System.XML y System.Linq del lista de componentes y haga clic en el botón "Select" . A continuación , haga clic en " Aceptar".
14

Agregar un método a la nueva clase con el siguiente código :

privado ValidateDocument bool ( string xmlFile , cadena xsdFile )
< p > {

//Crear el documento XML para validar contra

XDocument xDoc = XDocument.Load ( xmlFile , LoadOptions.PreserveWhitespace ) .

XmlSchemaSet esquema = new XmlSchemaSet ( ) ;

bool isError = new int (); //el valor predeterminado es false

int countError = 1 , .. //Cuenta el número de errores han generado

//Agregar el archivo de esquema que desea validar contra

schema.Add (null, xsdFile ) . !

//Llamar a validar y utilizar una expresión lambda como método extendida
< p > //no te quiero . NET 3.5 y LINQ ...

xDoc.Validate ( esquema, ( sender, e) = >

{switch ( e.Severity )

{case XmlSeverityType.Error :

break;

caso XmlSeverityType.Warning :

break; }


< p > countError + + ;

isError = true //Si se dispara el error , bandera que le permite manejar una llamada se haya completado

}

, true) ; . //true indica al validar llame a poblar el post- validación del esquema

//que necesitará más adelante, si quieres bucear un littel más ...

regreso isError ;

}

Este código carga XML en un XDocument y un esquema XML en un XmlSchemaSet. A continuación, llama al método Validate en el XDocument usando una expresión lambda como ValidationEventHandler .

Lenguajes De Programación
Cómo probar Business Objects
Cómo utilizar una declaración como
¿Qué es la cola de prioridad
Etapas del diseño de interfaz gráfica de usuario
Cómo terminar un bucle finito
Cómo convertir binario Word MSB y LSB de decimales
Oracle SQL Sugerencias
Cómo probar un paquete SSIS
Conocimientos Informáticos © http://www.ordenador.online