Class PostalAddress
Represents a postal address, e.g. for postal delivery or payments addresses.
Given a postal address, a postal service can deliver items to a premise, P.O.
Box or similar.
It is not intended to model geographical locations (roads, towns,
mountains).
In typical usage an address would be created via user input or from importing
existing data, depending on the type of process.
Advice on address input / editing:
- Use an i18n-ready address widget such as
https://github.com/google/libaddressinput)
- Users should not be presented with UI elements for input or editing of
fields outside countries where that field is used.
For more guidance on how to use this schema, please see:
https://support.google.com/business/answer/6397478
Inheritance
System.Object
PostalAddress
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
Assembly: Google.Api.CommonProtos.dll
Syntax
public sealed class PostalAddress : IMessage<PostalAddress>, IMessage, IEquatable<PostalAddress>, IDeepCloneable<PostalAddress>
Constructors
PostalAddress()
Declaration
PostalAddress(PostalAddress)
Declaration
public PostalAddress(PostalAddress other)
Parameters
Fields
AddressLinesFieldNumber
Field number for the "address_lines" field.
Declaration
public const int AddressLinesFieldNumber = 9
Field Value
Type |
Description |
System.Int32 |
|
AdministrativeAreaFieldNumber
Field number for the "administrative_area" field.
Declaration
public const int AdministrativeAreaFieldNumber = 6
Field Value
Type |
Description |
System.Int32 |
|
LanguageCodeFieldNumber
Field number for the "language_code" field.
Declaration
public const int LanguageCodeFieldNumber = 3
Field Value
Type |
Description |
System.Int32 |
|
LocalityFieldNumber
Field number for the "locality" field.
Declaration
public const int LocalityFieldNumber = 7
Field Value
Type |
Description |
System.Int32 |
|
OrganizationFieldNumber
Field number for the "organization" field.
Declaration
public const int OrganizationFieldNumber = 11
Field Value
Type |
Description |
System.Int32 |
|
PostalCodeFieldNumber
Field number for the "postal_code" field.
Declaration
public const int PostalCodeFieldNumber = 4
Field Value
Type |
Description |
System.Int32 |
|
RecipientsFieldNumber
Field number for the "recipients" field.
Declaration
public const int RecipientsFieldNumber = 10
Field Value
Type |
Description |
System.Int32 |
|
RegionCodeFieldNumber
Field number for the "region_code" field.
Declaration
public const int RegionCodeFieldNumber = 2
Field Value
Type |
Description |
System.Int32 |
|
RevisionFieldNumber
Field number for the "revision" field.
Declaration
public const int RevisionFieldNumber = 1
Field Value
Type |
Description |
System.Int32 |
|
SortingCodeFieldNumber
Field number for the "sorting_code" field.
Declaration
public const int SortingCodeFieldNumber = 5
Field Value
Type |
Description |
System.Int32 |
|
SublocalityFieldNumber
Field number for the "sublocality" field.
Declaration
public const int SublocalityFieldNumber = 8
Field Value
Type |
Description |
System.Int32 |
|
Properties
AddressLines
Unstructured address lines describing the lower levels of an address.
Because values in address_lines do not have type information and may
sometimes contain multiple values in a single field (e.g.
"Austin, TX"), it is important that the line order is clear. The order of
address lines should be "envelope order" for the country/region of the
address. In places where this can vary (e.g. Japan), address_language is
used to make it explicit (e.g. "ja" for large-to-small ordering and
"ja-Latn" or "en" for small-to-large). This way, the most specific line of
an address can be selected based on the language.
The minimum permitted structural representation of an address consists
of a region_code with all remaining information placed in the
address_lines. It would be possible to format such an address very
approximately without geocoding, but no semantic reasoning could be
made about any of the address components until it was at least
partially resolved.
Creating an address only containing a region_code and address_lines, and
then geocoding is the recommended way to handle completely unstructured
addresses (as opposed to guessing which parts of the address should be
localities or administrative areas).
Declaration
public RepeatedField<string> AddressLines { get; }
Property Value
AdministrativeArea
Optional. Highest administrative subdivision which is used for postal
addresses of a country or region.
For example, this can be a state, a province, an oblast, or a prefecture.
Specifically, for Spain this is the province and not the autonomous
community (e.g. "Barcelona" and not "Catalonia").
Many countries don't use an administrative area in postal addresses. E.g.
in Switzerland this should be left unpopulated.
Declaration
public string AdministrativeArea { get; set; }
Property Value
Type |
Description |
System.String |
|
Descriptor
Declaration
public static MessageDescriptor Descriptor { get; }
Property Value
LanguageCode
Optional. BCP-47 language code of the contents of this address (if
known). This is often the UI language of the input form or is expected
to match one of the languages used in the address' country/region, or their
transliterated equivalents.
This can affect formatting in certain countries, but is not critical
to the correctness of the data and will never affect any validation or
other non-formatting related operations.
If this value is not known, it should be omitted (rather than specifying a
possibly incorrect default).
Examples: "zh-Hant", "ja", "ja-Latn", "en".
Declaration
public string LanguageCode { get; set; }
Property Value
Type |
Description |
System.String |
|
Locality
Optional. Generally refers to the city/town portion of the address.
Examples: US city, IT comune, UK post town.
In regions of the world where localities are not well defined or do not fit
into this structure well, leave locality empty and use address_lines.
Declaration
public string Locality { get; set; }
Property Value
Type |
Description |
System.String |
|
Organization
Optional. The name of the organization at the address.
Declaration
public string Organization { get; set; }
Property Value
Type |
Description |
System.String |
|
Parser
Declaration
public static MessageParser<PostalAddress> Parser { get; }
Property Value
PostalCode
Optional. Postal code of the address. Not all countries use or require
postal codes to be present, but where they are used, they may trigger
additional validation with other parts of the address (e.g. state/zip
validation in the U.S.A.).
Declaration
public string PostalCode { get; set; }
Property Value
Type |
Description |
System.String |
|
Recipients
Optional. The recipient at the address.
This field may, under certain circumstances, contain multiline information.
For example, it might contain "care of" information.
Declaration
public RepeatedField<string> Recipients { get; }
Property Value
RegionCode
Declaration
public string RegionCode { get; set; }
Property Value
Type |
Description |
System.String |
|
Revision
The schema revision of the PostalAddress
.
All new revisions must be backward compatible with old revisions.
Declaration
public int Revision { get; set; }
Property Value
Type |
Description |
System.Int32 |
|
SortingCode
Optional. Additional, country-specific, sorting code. This is not used
in most regions. Where it is used, the value is either a string like
"CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
alone, representing the "sector code" (Jamaica), "delivery area indicator"
(Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
Declaration
public string SortingCode { get; set; }
Property Value
Type |
Description |
System.String |
|
Sublocality
Optional. Sublocality of the address.
For example, this can be neighborhoods, boroughs, districts.
Declaration
public string Sublocality { get; set; }
Property Value
Type |
Description |
System.String |
|
Methods
CalculateSize()
Declaration
public int CalculateSize()
Returns
Type |
Description |
System.Int32 |
|
Implements
Clone()
Declaration
public PostalAddress Clone()
Returns
Implements
Equals(PostalAddress)
Declaration
public bool Equals(PostalAddress other)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Implements
System.IEquatable<T>.Equals(T)
Equals(Object)
Declaration
public override bool Equals(object other)
Parameters
Type |
Name |
Description |
System.Object |
other |
|
Returns
Type |
Description |
System.Boolean |
|
Overrides
System.Object.Equals(System.Object)
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type |
Description |
System.Int32 |
|
Overrides
System.Object.GetHashCode()
MergeFrom(CodedInputStream)
Declaration
public void MergeFrom(CodedInputStream input)
Parameters
Implements
MergeFrom(PostalAddress)
Declaration
public void MergeFrom(PostalAddress other)
Parameters
Implements
ToString()
Declaration
public override string ToString()
Returns
Type |
Description |
System.String |
|
Overrides
System.Object.ToString()
WriteTo(CodedOutputStream)
Declaration
public void WriteTo(CodedOutputStream output)
Parameters
Implements
Explicit Interface Implementations
IMessage.Descriptor
Declaration
MessageDescriptor IMessage.Descriptor { get; }
Returns
Implements