Tengo algunos métodos WCF que se utilizan para transmitir información de una aplicación de servidor a una interfaz de sitio web para su uso en enlace. Estoy enviando el resultado como un XElement que es una raíz de un árbol XML que contiene los datos que quiero vincular.¿Cuál es la mejor manera de probar la validez de XML a partir de un método?
Me gustaría crear algunas pruebas que examinen los datos y se aseguren de que funcionen como se esperaba.
Mi pensamiento actual es este: cada método que devuelve un árbol XElement tiene un archivo de esquema correspondiente (.XSD). Este archivo está incluido dentro del ensamblaje que contiene mis clases WCF como un recurso incrustado.
Las pruebas llaman al método en estos métodos y compara el resultado con estos esquemas incrustados.
¿Es esta una buena idea? Si no, ¿de qué otras maneras puedo usar para proporcionar una "garantía" de qué tipo de XML devolverá un método?
Si lo es, ¿cómo se valida un XElement contra un esquema? ¿Y cómo puedo obtener ese esquema del ensamblaje en el que está incrustado?
element.GetSchemaInfo() devuelve un valor nulo. – Will
No tengo el método Validate en el XDocument, este es un método de extensión del cual el espacio de nombres? –
para cualquiera que también esté buscando el espacio de nombre: usando System.Xml.Schema; –