Exemple #1
0
        public IList <IError> ValidateXML(string xmlData, xsdDocument xsdDocumentType)
        {
            IList <IError> errorList = new List <IError>();


            string            errorHolder = string.Empty;
            ValidationHandler handler     = new ValidationHandler();

            try
            {
                XmlReaderSettings settings = GetXSD(xsdDocumentType);

                XmlReader xmlReader = XmlReader.Create(new StringReader(xmlData), settings);
                settings.ValidationEventHandler += new ValidationEventHandler(handler.HandleValidationError);
                using (XmlReader validatingReader = XmlReader.Create(new StringReader(xmlData), settings))
                {
                    while (validatingReader.Read())
                    {
                    }
                }

                errorList = handler.ValidationErrors;
            }
            catch (Exception ex)
            {
                errorList.Add(new ValidationError()
                {
                    errorMessage = ex.Message
                });
            }

            return(errorList);
        }
Exemple #2
0
        private XmlReaderSettings GetXSD(xsdDocument xsdDocumentType)
        {
            XmlReaderSettings xsd = null;
            bool resultget;

            lock (syncLockoAuthData)
            {
                resultget = xsdDictionary.TryGetValue(xsdDocumentType.ToString(), out xsd);
            }

            return(xsd);
        }