public DanskAdresseType ToDanskAdresseType() { var ret = new DanskAdresseType() { AddressComplete = this.ToAddressCompleteType(), // No address point for persons AddressPoint = null, // No address note NoteTekst = null, // No political districts PolitiDistriktTekst = null, // Set post district PostDistriktTekst = this.PostDistrict, // No school district SkoleDistriktTekst = null, // No social disrict SocialDistriktTekst = null, // No church district SogneDistriktTekst = null, // Assumed as high road code SpecielVejkodeIndikator = ToSpecielVejkodeIndikator(), // Always true because SpecielVejkodeIndikator is always set SpecielVejkodeIndikatorSpecified = true, // Always false UkendtAdresseIndikator = false, // No election district ValgkredsDistriktTekst = null }; return(ret); }
public AdresseType ToAddressType(String addressString) { try { addressString = HttpUtility.UrlEncode(addressString, Encoding.UTF8); String urlString = "http://dawa.aws.dk/adresser?q=" + addressString; var url = new Uri(urlString); var responseBytes = new System.Net.WebClient().DownloadData(url); var charset = Encoding.UTF8; String response = charset.GetString(responseBytes); JArray adresses = JArray.Parse(response); if (adresses.Count > 0) { String streetName = null, houseNumber = null, floor = null, door = null, districtSubdivision = null, postCode = null, postDistrict = null; streetName = GetString(adresses[0], "adgangsadresse/vejstykke/navn"); houseNumber = GetString(adresses[0], "adgangsadresse/husnr"); floor = GetString(adresses[0], "etage"); door = GetString(adresses[0], "dør"); districtSubdivision = GetString(adresses[0], "adgangsadresse/supplerendebynavn"); postCode = GetString(adresses[0], "adgangsadresse/postnummer/nr"); postDistrict = GetString(adresses[0], "adgangsadresse/postnummer/navn"); AdresseType ret = new AdresseType(); DanskAdresseType danskAdresse = new DanskAdresseType(); danskAdresse.PostDistriktTekst = postDistrict; ret.Item = danskAdresse; AddressCompleteType addressComplete = new AddressCompleteType(); danskAdresse.AddressComplete = addressComplete; AddressAccessType addressAccess = new AddressAccessType(); addressAccess.StreetBuildingIdentifier = houseNumber; addressComplete.AddressAccess = addressAccess; AddressPostalType addressPostal = new AddressPostalType(); addressPostal.StreetName = streetName; addressPostal.FloorIdentifier = floor; addressPostal.SuiteIdentifier = door; addressPostal.DistrictSubdivisionIdentifier = districtSubdivision; addressPostal.PostCodeIdentifier = postCode; addressPostal.DistrictName = postDistrict; addressComplete.AddressPostal = addressPostal; return(ret); } } catch (Exception ex) { cpreader.Logger.error(ex); } return(null); }
public AdresseType ToAddressType(String addressString) { String comma = "((\\s+)|(\\s*[,;\\.]{1,2}\\s*))"; String pat = "(?<streetName>[^0-9]+)" + comma + "(?<houseNumber>[0-9]+[a-zA-Z]*)" + comma + "(" + "(?<floor>([0-9]{1,2})|st)?(\\.)?(sal)?" + comma + ")?" + "(" + "(?<door>[a-zA-Z]+)" + comma + ")?" + "(?<postCode>[0-9]{4})" + comma + "(?<postDistrict>\\p{L}+(\\s+\\p{L}+)*)\\Z"; Match m = Regex.Match(addressString, pat); if (m.Success) { String streetName = null, houseNumber = null, floor = null, door = null, postCode = null, postDistrict = null; streetName = m.Groups["streetName"].Value; houseNumber = m.Groups["houseNumber"].Value; floor = m.Groups["floor"].Value; door = m.Groups["door"].Value; postCode = m.Groups["postCode"].Value; postDistrict = m.Groups["postDistrict"].Value; AdresseType ret = new AdresseType(); DanskAdresseType danskAdresse = new DanskAdresseType(); danskAdresse.PostDistriktTekst = postDistrict; ret.Item = danskAdresse; AddressCompleteType addressComplete = new AddressCompleteType(); danskAdresse.AddressComplete = addressComplete; AddressAccessType addressAccess = new AddressAccessType(); addressAccess.StreetBuildingIdentifier = houseNumber; addressComplete.AddressAccess = addressAccess; AddressPostalType addressPostal = new AddressPostalType(); addressPostal.StreetName = streetName; addressPostal.FloorIdentifier = floor; addressPostal.SuiteIdentifier = door; addressPostal.PostCodeIdentifier = postCode; addressPostal.DistrictName = postDistrict; addressComplete.AddressPostal = addressPostal; return(ret); } return(null); }
public DanskAdresseType ToDanskAdresseType() { var ret = new DanskAdresseType() { AddressComplete = this.ToAddressCompleteType(), // No address point for persons AddressPoint = this.ToAddressPointType(), NoteTekst = ToAddressNoteTekste(), // No political districts PolitiDistriktTekst = null, // TODO: Lookup post district PostDistriktTekst = null, // No school district SkoleDistriktTekst = null, // No social disrict SocialDistriktTekst = null, // No church district - checked SogneDistriktTekst = null, // Assuming this is the same as high road code - verified SpecielVejkodeIndikator = this.ToSpecielVejkodeIndikator(), // Always true because SpecielVejkodeIndikator is always set SpecielVejkodeIndikatorSpecified = true, // Address is unknown if it is empty :) // TODO: Make sure that a historical address is never empty UkendtAdresseIndikator = false, // No election district - checked ValgkredsDistriktTekst = null }; return(ret); }
private AdresseType getAdresseType(IDanishAddress address) { String streetName = null, houseNumber = null, floor = null, door = null, districtSubdivision = null, postCode = null, postDistrict = null; streetName = address.streetName(); houseNumber = address.streetBuilding(); floor = address.floor(); door = address.suite(); districtSubdivision = address.districtSubdivision(); postCode = address.postCode(); postDistrict = address.postDistrikt(); AdresseType ret = new AdresseType(); DanskAdresseType danskAdresse = new DanskAdresseType(); danskAdresse.PostDistriktTekst = postDistrict; ret.Item = danskAdresse; AddressCompleteType addressComplete = new AddressCompleteType(); danskAdresse.AddressComplete = addressComplete; AddressAccessType addressAccess = new AddressAccessType(); addressAccess.StreetBuildingIdentifier = houseNumber; addressComplete.AddressAccess = addressAccess; AddressPostalType addressPostal = new AddressPostalType(); addressPostal.StreetName = streetName; addressPostal.FloorIdentifier = floor; addressPostal.SuiteIdentifier = door; addressPostal.DistrictSubdivisionIdentifier = districtSubdivision; addressPostal.PostCodeIdentifier = postCode; addressPostal.DistrictName = postDistrict; addressComplete.AddressPostal = addressPostal; return(ret); }
public static DanishAddress FromXmlType(DanskAdresseType oio) { return(new DanishAddress() { DenmarkAddress = new DenmarkAddress() { CountryRef = CountryRef.FromXmlType(oio.AddressComplete.AddressPostal.CountryIdentificationCode), DistrictName = oio.AddressComplete.AddressPostal.DistrictName, SpecialRoadCode = oio.SpecielVejkodeIndikator, StreetBuildingIdentifier = oio.AddressComplete.AddressPostal.StreetBuildingIdentifier, StreetCode = oio.AddressComplete.AddressAccess.StreetCode, StreetName = oio.AddressComplete.AddressPostal.StreetName, StreetNameForAddressing = oio.AddressComplete.AddressPostal.StreetNameForAddressingName, DistrictSubdivisionIdentifier = oio.AddressComplete.AddressPostal.DistrictSubdivisionIdentifier, MailDeliverySublocation = oio.AddressComplete.AddressPostal.MailDeliverySublocationIdentifier, MunicipalityCode = oio.AddressComplete.AddressAccess.MunicipalityCode, FloorIdentifier = oio.AddressComplete.AddressPostal.FloorIdentifier, PostCodeIdentifier = oio.AddressComplete.AddressPostal.PostCodeIdentifier, SuiteIdentifier = oio.AddressComplete.AddressPostal.SuiteIdentifier, Address = new Address() { //TODO: Fill IsUnknown = false, Note = null, } }, AddressPoint = oio.AddressPoint != null?AddressPoint.FromXmlType(oio.AddressPoint) : null as AddressPoint, ConstituencyDistrict = oio.ValgkredsDistriktTekst, ParishDistrict = oio.SogneDistriktTekst, PoliceDistrict = oio.PolitiDistriktTekst, PostDistrict = oio.PostDistriktTekst, PostOfficeBoxIdentifier = oio.AddressComplete.AddressPostal.PostOfficeBoxIdentifier, SchoolDistrict = oio.SkoleDistriktTekst, SocialDistrict = oio.SocialDistriktTekst, }); }