private void WriteAddress(string elementName, GpxAddress address) { Writer_.WriteStartElement(elementName, GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE); if (address.StreetAddress != null) { Writer_.WriteElementString("StreetAddress", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.StreetAddress); } if (address.City != null) { Writer_.WriteElementString("City", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.City); } if (address.State != null) { Writer_.WriteElementString("State", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.State); } if (address.Country != null) { Writer_.WriteElementString("Country", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.Country); } if (address.PostalCode != null) { Writer_.WriteElementString("PostalCode", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.PostalCode); } Writer_.WriteEndElement(); }
private GpxAddress ReadGarminGpxAddress(XmlReader reader) { GpxAddress address = new GpxAddress(); if (reader.IsEmptyElement) return address; string elementName = reader.Name; while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: switch (reader.LocalName) { case "StreetAddress": if (string.IsNullOrEmpty(address.StreetAddress)) { address.StreetAddress = ReadContentAsString(reader); break; } address.StreetAddress += " " + ReadContentAsString(reader); break; case "City": address.City = ReadContentAsString(reader); break; case "State": address.State = ReadContentAsString(reader); break; case "Country": address.Country = ReadContentAsString(reader); break; case "PostalCode": address.PostalCode = ReadContentAsString(reader); break; case "Extensions": SkipElement(reader); break; default: throw new FormatException(reader.Name); } break; case XmlNodeType.EndElement: if (reader.Name != elementName) throw new FormatException(reader.Name); return address; } } throw new FormatException(elementName); }
private GpxAddress ReadGarminGpxAddress() { GpxAddress address = new GpxAddress(); if (reader.IsEmptyElement) { return(address); } string elementName = reader.Name; while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: switch (reader.LocalName) { case "StreetAddress": if (string.IsNullOrEmpty(address.StreetAddress)) { address.StreetAddress = reader.ReadElementContentAsString(); break; } address.StreetAddress += " " + reader.ReadElementContentAsString(); break; case "City": address.City = reader.ReadElementContentAsString(); break; case "State": address.State = reader.ReadElementContentAsString(); break; case "Country": address.Country = reader.ReadElementContentAsString(); break; case "PostalCode": address.PostalCode = reader.ReadElementContentAsString(); break; default: reader.SkipElement(); break; } break; case XmlNodeType.EndElement: if (reader.Name != elementName) { throw new FormatException(reader.Name); } return(address); } } throw new FormatException(elementName); }
private void WriteAddress(string elementName, GpxAddress address) { Writer_.WriteStartElement(elementName, GARMIN_EXTENSIONS_NAMESPACE); if (!string.IsNullOrEmpty(address.StreetAddress)) Writer_.WriteElementString("StreetAddress", GARMIN_EXTENSIONS_NAMESPACE, address.StreetAddress); if (!string.IsNullOrEmpty(address.City)) Writer_.WriteElementString("City", GARMIN_EXTENSIONS_NAMESPACE, address.City); if (!string.IsNullOrEmpty(address.State)) Writer_.WriteElementString("State", GARMIN_EXTENSIONS_NAMESPACE, address.State); if (!string.IsNullOrEmpty(address.Country)) Writer_.WriteElementString("Country", GARMIN_EXTENSIONS_NAMESPACE, address.Country); if (!string.IsNullOrEmpty(address.PostalCode)) Writer_.WriteElementString("PostalCode", GARMIN_EXTENSIONS_NAMESPACE, address.PostalCode); Writer_.WriteEndElement(); }
private void WriteAddress(string elementName, GpxAddress address) { Writer_.WriteStartElement(elementName, GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE); if (address.StreetAddress != null) Writer_.WriteElementString("StreetAddress", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.StreetAddress); if (address.City != null) Writer_.WriteElementString("City", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.City); if (address.State != null) Writer_.WriteElementString("State", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.State); if (address.Country != null) Writer_.WriteElementString("Country", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.Country); if (address.PostalCode != null) Writer_.WriteElementString("PostalCode", GpxNamespaces.GARMIN_WAYPOINT_EXTENSIONS_NAMESPACE, address.PostalCode); Writer_.WriteEndElement(); }