public sealed class Money : IMessage<Money>, IEquatable<Money>, IDeepCloneable<Money>, IBufferMessage, IMessage
Represents an amount of money with its currency type.
Namespace
Google.TypeAssembly
Google.Api.CommonProtos.dll
Constructors
Money()
public Money()
Money(Money)
public Money(Money other)
Fields
CurrencyCodeFieldNumber
public
const
int
CurrencyCodeFieldNumber
=
1
Field number for the "currency_code" field.
NanosFieldNumber
public
const
int
NanosFieldNumber
=
3
Field number for the "nanos" field.
UnitsFieldNumber
public
const
int
UnitsFieldNumber
=
2
Field number for the "units" field.
Properties
CurrencyCode
public string CurrencyCode { get; set; }
The three-letter currency code defined in ISO 4217.
DecimalValue
public decimal DecimalValue { get; set; }
The amount of money in decimal format. This is an abstraction of the Units and Nanos properties. Getting this property combines those property values, and setting this property will set both of those properties.
The integral part of the decimal must be a valid long , and the fractional part must have a maximum of 9 digits of precision.
Descriptor
public static MessageDescriptor Descriptor { get; }
Nanos
public int Nanos { get; set; }
Number of nano (10^-9) units of the amount.
The value must be between -999,999,999 and +999,999,999 inclusive.
If units
is positive, nanos
must be positive or zero.
If units
is zero, nanos
can be positive, zero, or negative.
If units
is negative, nanos
must be negative or zero.
For example $-1.75 is represented as units
=-1 and nanos
=-750,000,000.
Parser
public static MessageParser<Money> Parser { get; }
Units
public long Units { get; set; }
The whole units of the amount.
For example if currencyCode
is "USD"
, then 1 unit is one US dollar.
Methods
CalculateSize()
public int CalculateSize()
Calculates the size of this message in Protocol Buffer wire format, in bytes.
The number of bytes required to write this message to a coded output stream.
Clone()
public Money Clone()
Creates a deep clone of this object.
Equals(Money)
public bool Equals(Money other)
Equals(object)
public override bool Equals(object other)
GetHashCode()
public override int GetHashCode()
MergeFrom(CodedInputStream)
public void MergeFrom(CodedInputStream input)
Merges the data from the specified coded input stream with the current message.
See the user guide for precise merge semantics.
MergeFrom(Money)
public void MergeFrom(Money other)
Merges the given message into this one.
See the user guide for precise merge semantics.
ToString()
public override string ToString()
WriteTo(CodedOutputStream)
public void WriteTo(CodedOutputStream output)
Writes the data to the given coded output stream.
output

