Decimal.ToUInt32(Decimal) Method

Definition

Important

This API is not CLS-compliant.

CLS-compliant alternative
System.Decimal.ToInt64(Decimal)

Converts the value of the specified Decimal to the equivalent 32-bit unsigned integer.

C#
[System.CLSCompliant(false)]
public static uint ToUInt32 (decimal d);

Parameters

d
Decimal

The decimal number to convert.

Returns

A 32-bit unsigned integer equivalent to the value of d.

Attributes

Exceptions

d is negative or greater than UInt32.MaxValue.

Examples

The following example uses the ToUInt32 method to convert decimal numbers to UInt32 values.

C#
using System;

class Example
{
   public static void Main( )
   {
      decimal[] values = { 123m, new decimal(123000, 0, 0, false, 3),
                           123.999m, 4294967295.999m, 4294967296m,
                           4294967296m, 2147483647.999m, 2147483648m,
                           -0.999m, -1m, -2147483648.999m, -2147483649m };

      foreach (var value in values) {
         try {
            uint number = Decimal.ToUInt32(value);
            Console.WriteLine("{0} --> {1}", value, number);
         }
         catch (OverflowException e)
         {
             Console.WriteLine("{0}: {1}", e.GetType().Name, value);
         }
      }
   }
}
// The example displays the following output:
//     123 --> 123
//     123.000 --> 123
//     123.999 --> 123
//     4294967295.999 --> 4294967295
//     OverflowException: 4294967296
//     OverflowException: 4294967296
//     2147483647.999 --> 2147483647
//     2147483648 --> 2147483648
//     -0.999 --> 0
//     OverflowException: -1
//     OverflowException: -2147483648.999
//     OverflowException: -2147483649

Remarks

The return value is the integral part of the decimal value; fractional digits are truncated.

You can also convert a Decimal value to an 32-bit unsigned integer by using the Explicit assignment operator. Because the operator performs a narrowing conversion, you must use a casting operator in C# or a conversion function in Visual Basic.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

See also