private static bool ValidateXmlWithXsd(string xmlUri, string xsdUri) { try { StringBuilder xmlFileData = new StringBuilder(); XmlReaderSettings xmlSettings = new XmlReaderSettings(); xmlSettings.Schemas = new System.Xml.Schema.XmlSchemaSet(); xmlSettings.ValidationType = ValidationType.Schema; XmlReader reader = XmlReader.Create(xmlUri, xmlSettings); using (StreamReader file = new StreamReader(xmlUri)) { string ln; while ((ln = file.ReadLine()) != null) { xmlFileData.Append(ln); } file.Close(); } XmlSerializer serializer = new XmlSerializer(typeof(Message)); List <Learners> lstLearners; using (TextReader textReader = new StringReader(xmlFileData.ToString())) { Message result = (Message)serializer.Deserialize(textReader); lstLearners = Learners.CastMessageToLearner(result); } // Parse the file. foreach (var item in lstLearners) { item.AddToDatabase(); } return(true); } catch (System.Xml.XmlException ex) { return(false); } }