Class Money (2.15.0)

public sealed class Money : IMessage<Money>, IEquatable<Money>, IDeepCloneable<Money>, IBufferMessage, IMessage

Represents an amount of money with its currency type.

Inheritance

object > Money

Namespace

Google.Type

Assembly

Google.Api.CommonProtos.dll

Constructors

Money()

public Money()

Money(Money)

public Money(Money other)
Parameter
Name Description
other Money

Fields

CurrencyCodeFieldNumber

public const int CurrencyCodeFieldNumber = 1

Field number for the "currency_code" field.

Field Value
Type Description
int

NanosFieldNumber

public const int NanosFieldNumber = 3

Field number for the "nanos" field.

Field Value
Type Description
int

UnitsFieldNumber

public const int UnitsFieldNumber = 2

Field number for the "units" field.

Field Value
Type Description
int

Properties

CurrencyCode

public string CurrencyCode { get; set; }

The three-letter currency code defined in ISO 4217.

Property Value
Type Description
string

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.

Property Value
Type Description
decimal
Exceptions
Type Description
ArgumentOutOfRangeException

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; }
Property Value
Type Description
MessageDescriptor

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.

Property Value
Type Description
int

Parser

public static MessageParser<Money> Parser { get; }
Property Value
Type Description
MessageParserMoney

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.

Property Value
Type Description
long

Methods

CalculateSize()

public int CalculateSize()

Calculates the size of this message in Protocol Buffer wire format, in bytes.

Returns
Type Description
int

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.

Returns
Type Description
Money

A deep clone of this object.

Equals(Money)

public bool Equals(Money other)
Parameter
Name Description
other Money
Returns
Type Description
bool

Equals(object)

public override bool Equals(object other)
Parameter
Name Description
other object
Returns
Type Description
bool
Overrides

GetHashCode()

public override int GetHashCode()
Returns
Type Description
int
Overrides

MergeFrom(CodedInputStream)

public void MergeFrom(CodedInputStream input)

Merges the data from the specified coded input stream with the current message.

Parameter
Name Description
input CodedInputStream
Remarks

See the user guide for precise merge semantics.

MergeFrom(Money)

public void MergeFrom(Money other)

Merges the given message into this one.

Parameter
Name Description
other Money
Remarks

See the user guide for precise merge semantics.

ToString()

public override string ToString()
Returns
Type Description
string
Overrides

WriteTo(CodedOutputStream)

public void WriteTo(CodedOutputStream output)

Writes the data to the given coded output stream.

Parameter
Name Description
output CodedOutputStream

Coded output stream to write the data to. Must not be null.