1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
string affairePfau = contentXml.EmbeddedXMLContent.Any.InnerXml;
Validate(affairePfau, schemaSet);
private void Validate(string fluxXML, XmlSchemaSet schemaSet)
{
try
{
Console.WriteLine();
Console.WriteLine("\r\nValidation du fichier XML {0}...", fluxXML.ToString());
XmlSchema compiledSchema = null;
foreach (XmlSchema schema in schemaSet.Schemas())
{
compiledSchema = schema;
}
XmlReaderSettings settings = new XmlReaderSettings();
settings.Schemas.Add(compiledSchema);
settings.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
settings.ValidationType = ValidationType.Schema;
using (var sr = new StringReader(fluxXML))
{
//Create the schema validating reader.
XmlReader vreader = XmlReader.Create(sr, settings);
while (vreader.Read()) { }
//Close the reader.
vreader.Close();
Console.WriteLine("Le fichier correspond bien au XSD");
}
}
catch (Exception ex)
{
_logger.Debug(ex.Message + ex.StackTrace);
}
} |
Partager