protected void ValidateDocument(XDocument doc) { try { validator.Validate(doc); } catch (Exception e) { throw RuntimeExceptionUtil.Mask(e, "Error during xml document validation"); } }
public void TestCreateValidator() { IXmlValidator validator1 = xmlConfigUtil.CreateValidator(XSD_SIMPLE_TYPES_2_0); Assert.AssertNotNull(validator1); IXmlValidator validator2 = xmlConfigUtil.CreateValidator(XSD_SIMPLE_TYPES_2_0, XSD_ORM_2_0); Assert.AssertNotNull(validator2); XDocument doc = xmlConfigUtil.ReadXmlFiles(ORM_XML_SIMPLE)[0]; validator2.Validate(doc); }
private void CallXmlReader(IFormFile file, ref List <string> errorMesages) { XmlTransactionModel xmlTransactionModel = xmlTransactionReader.Read(file); if (xmlTransactionModel != null) { foreach (XmlTransaction transaction in xmlTransactionModel.Transactions) { errorMesages.AddRange(xmlValidator.Validate(transaction)); } if (errorMesages.Count == 0) { IEnumerable <TransactionModel> transactionModels = xmlTransactionModel.MapToModel(); transactionRepository.AddRange(transactionModels); } } }
/// <summary> /// Convert raw bytes of data to messages. /// </summary> /// <param name="rawData">Messages data to convert.</param> /// <returns>Messages returned</returns> /// <exception cref="ArgumentNullException">Throws when argument rawData is null.</exception> public List <Message> Unmarshall(byte[] rawData) { if (rawData == null) { throw new ArgumentNullException(); } var outputMessages = new List <Message>(); var separatorIndices = new List <int>(); for (var i = 0; i < rawData.Length; i++) { if (rawData[i] == 23) { separatorIndices.Add(i); } } separatorIndices.Add(rawData.Length); for (int i = 0, begin = 0; i < separatorIndices.Count; i++) { // Validation - might not be necessary. var xmlString = Encoding.UTF8.GetString(rawData, begin, separatorIndices[i] - begin); if (xmlString == string.Empty) // TODO fix & remove { break; } var xmlDoc = XDocument.Parse(xmlString); var msgClass = Message.GetMessageClassFromString(xmlDoc.Root.Name.LocalName); _validator.Validate(msgClass, xmlDoc); // Deserialization var message = _serializer.Deserialize(rawData, begin, separatorIndices[i] - begin); outputMessages.Add(message); begin = separatorIndices[i] + 1; } return(outputMessages); }
public void Validate_PerfectFile_Pass() { var xmlTransaction = new XmlTransaction { id = "Inv00001", TransactionDate = "2019-01-23T13:45:10", PaymentDetails = new PaymentDetails { Amount = "200.00", CurrencyCode = "USD" }, Status = "Done" }; List <string> result = xmlValidator.Validate(xmlTransaction); Assert.IsTrue(result.Count == 0); }
public void ExampleDivideProblemMessageXmlPassesValidation() { var xmlDoc = XDocument.Parse(MessageClass.DivideProblem.GetXmlSchema()); var passed = _validator.Validate(MessageClass.DivideProblem, xmlDoc); Assert.IsTrue(passed); }