void AllTypes() { var registry = new PrefixRegistryExtension(new AllTypesInSameNamespace <PatientVerificationRequest>().ToDictionary(x => x, x => "q")); var container = new ConfigurationContainer().Extend(registry) // Totally cheating here. Put formatter logic to get what you want: .Register(x => "2018-08-07+10:00", x => new DateTime(2018, 8, 7, 10, 0, 0)) .InspectingType <PatientVerificationRequest>() .Create() .ForTesting(); container.Assert(new PatientVerificationRequest { EarliestDateOfService = DateTime.Today }, @"<?xml version=""1.0"" encoding=""utf-8""?><q:patientVerificationRequest OPVTypeCde=""PVM"" earliestDateOfService=""2018-08-07+10:00"" xmlns:q=""http://hic.gov.au/hiconline/hiconline/version-4"" />"); }
void Verify() { var registry = new PrefixRegistryExtension(new Dictionary <Type, string> { { typeof(PatientVerificationRequest), "q" } }); var container = new ConfigurationContainer().Extend(registry) .Type <DateTime>() .Register() .Converter() // Totally cheating here. Put formatter logic to get what you want: .ByCalling(_ => "2018-08-07+10:00", _ => new DateTime(2018, 8, 7, 10, 0, 0)) .InspectingType <PatientVerificationRequest>() .Create() .ForTesting(); container.Assert(new PatientVerificationRequest { EarliestDateOfService = DateTime.Today }, @"<?xml version=""1.0"" encoding=""utf-8""?><q:patientVerificationRequest OPVTypeCde=""PVM"" earliestDateOfService=""2018-08-07+10:00"" xmlns:q=""http://hic.gov.au/hiconline/hiconline/version-4"" />"); }