/// <summary> /// /// </summary> /// <param name="request"></param> /// <returns></returns> private string ConvertRequestToXML(ApkKeuringsverzoekRequestMessage request) { var serializer = new XmlSerializer(typeof(ApkKeuringsverzoekRequestMessage)); using (var stream = new StringWriterWithEncoding(Encoding.UTF8)) using (var xmlwriter = XmlWriter.Create(stream)) { serializer.Serialize(xmlwriter, request); return(stream.ToString()); } }
private string LogAndSendRequest(ApkKeuringsverzoekRequestMessage apkKeuringsVerzoek) { var requestMessage = ConvertRequestToXML(apkKeuringsVerzoek); var requestLog = new ApkAanvraagLog(); // log request requestLog.CorrelationId = apkKeuringsVerzoek.Keuringsverzoek.CorrelatieId; requestLog.RequestMessage = requestMessage; _apkAanvraagLogRepository.Insert(requestLog); // make request var responseMessage = _rdwApkAgent.SendApkKeuringsVerzoek(requestMessage); // log respone requestLog.ResponseMessage = responseMessage; _apkAanvraagLogRepository.Update(requestLog); return(responseMessage); }
public void ValidObjectCanBeSerializedAndDeserializedTest() { var verzoek = new ApkKeuringsverzoekRequestMessage(); // dont set it wil give an error // verzoek.Xsd = "http://www.w3.org/2001/XMLSchema"; // verzoek.Xsi = "http://www.w3.org/2001/XMLSchema-instance"; verzoek.Keuringsverzoek = new Keuringsverzoek(); verzoek.Keuringsverzoek.Apk = "http://www.rdw.nl/apk"; verzoek.Keuringsverzoek.CorrelatieId = "0038c17b-aa10- 4f93-8569- d184fdfc265b"; verzoek.Keuringsverzoek.Keuringsdatum = "12-1-2016"; verzoek.Keuringsverzoek.Xmlns = "http://www.rdw.nl/apk"; verzoek.Keuringsverzoek.Voertuig = new Voertuig(); verzoek.Keuringsverzoek.Voertuig.Kenteken = "BV-01-EG"; verzoek.Keuringsverzoek.Voertuig.Kilometerstand = "12345"; verzoek.Keuringsverzoek.Voertuig.Naam = "A. eigenaar"; verzoek.Keuringsverzoek.Voertuig.Type = "personenauto"; verzoek.Keuringsverzoek.Keuringsinstantie = new Keuringsinstantie(); verzoek.Keuringsverzoek.Keuringsinstantie.Kvk = "3017 51123"; verzoek.Keuringsverzoek.Keuringsinstantie.Naam = "De Groot"; verzoek.Keuringsverzoek.Keuringsinstantie.Plaats = "De heurne"; verzoek.Keuringsverzoek.Keuringsinstantie.Type = "garage"; var serializer = new XmlSerializer(verzoek.GetType()); using (var stream = new StringWriterWithEncoding(Encoding.UTF8)) using (var xmlwriter = XmlWriter.Create(stream)) { serializer.Serialize(xmlwriter, verzoek); var xml = stream.ToString(); using (var reader = new StringReader(xml)) { var deserializer = new XmlSerializer(typeof(ApkKeuringsverzoekRequestMessage)); var obj = deserializer.Deserialize(reader); Assert.IsInstanceOfType(obj, typeof(ApkKeuringsverzoekRequestMessage)); } } }
/// <summary> /// /// </summary> /// <param name="apkCommand"></param> /// <returns></returns> public ApkKeuringsverzoekRequestMessage CreateRequestFromCommand(ApkKeuringsVerzoekCommand apkCommand) { var verzoek = new ApkKeuringsverzoekRequestMessage(); verzoek.Keuringsverzoek = new Keuringsverzoek(); verzoek.Keuringsverzoek.Apk = _keuringVerzoekApk; verzoek.Keuringsverzoek.CorrelatieId = Guid.NewGuid().ToString(); verzoek.Keuringsverzoek.Keuringsdatum = apkCommand.KeuringsDatum.ToString("d-M-yyyy"); verzoek.Keuringsverzoek.Xmlns = _keuringsVerzoekXmlns; verzoek.Keuringsverzoek.Voertuig = new Voertuig(); verzoek.Keuringsverzoek.Voertuig.Kenteken = apkCommand.Kenteken; verzoek.Keuringsverzoek.Voertuig.Kilometerstand = apkCommand.Kilometerstand.ToString(); verzoek.Keuringsverzoek.Voertuig.Naam = apkCommand.EigenaarNaam; verzoek.Keuringsverzoek.Voertuig.Type = apkCommand.VoertuigType; verzoek.Keuringsverzoek.Keuringsinstantie = new Keuringsinstantie(); verzoek.Keuringsverzoek.Keuringsinstantie.Kvk = apkCommand.KeuringsinstantieKvkNummer; verzoek.Keuringsverzoek.Keuringsinstantie.Naam = apkCommand.Bedrijfsnaam; verzoek.Keuringsverzoek.Keuringsinstantie.Plaats = apkCommand.BedrijfPlaats; verzoek.Keuringsverzoek.Keuringsinstantie.Type = apkCommand.KeuringsinstantieType; return(verzoek); }