ToDecimal Method (Double)

# Convert.ToDecimal Method (Double)

.NET Framework 3.0
Converts the value of the specified double-precision floating point number to an equivalent Decimal number.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

## Syntax

```public static decimal ToDecimal (
double value
)
```
```public static Decimal ToDecimal (
double value
)
```
```public static function ToDecimal (
value : double
) : decimal
```
```Not applicable.
```

#### Parameters

value

A double-precision floating point number.

#### Return Value

A Decimal number equivalent to the value of value.

## Exceptions

Exception typeCondition

OverflowException

The numeric value of value is greater than MaxValue or less than MinValue.

## Remarks

The Decimal value returned by this method contains a maximum of 15 significant digits. If the value parameter contains more than 15 significant digits, it is rounded using rounding to nearest. The following example illustrates how the Convert.ToDecimal(Double) method uses rounding to nearest to return a Decimal value with 15 significant digits.

## Example

The following code sample illustrates the conversion of a Double value to a Decimal one, using ToDecimal.

```public void ConvertDoubleDecimal(double doubleVal){

decimal decimalVal;

// Conversion from double to decimal cannot overflow.
decimalVal = System.Convert.ToDecimal(doubleVal);
System.Console.WriteLine ("{0} as a decimal is: {1}",
doubleVal, decimalVal);

// Decimal to double conversion can overflow.
try {
doubleVal = System.Convert.ToDouble(decimalVal);
System.Console.WriteLine("{0} as a double is: {1}",
decimalVal, doubleVal);
}
catch (System.OverflowException) {
System.Console.WriteLine(
"Overflow in decimal-to-double conversion.");
}

}

```
```public void ConvertDoubleDecimal(double doubleVal)
{
System.Decimal decimalVal;

// Conversion from double to decimal cannot overflow.
decimalVal = System.Convert.ToDecimal(doubleVal);
System.Console.WriteLine("{0} as a decimal is: {1}",
System.Convert.ToString(doubleVal),
System.Convert.ToString(decimalVal));

// Decimal to double conversion can overflow.
try {
doubleVal = System.Convert.ToDouble(decimalVal);
System.Console.WriteLine("{0} as a double is: {1}",
System.Convert.ToString(decimalVal),
System.Convert.ToString(doubleVal));
}
catch (System.OverflowException exp) {
System.Console.WriteLine("Overflow in decimal-to-double conversion.");
}
} //ConvertDoubleDecimal

```

## Platforms

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

## Version Information

#### .NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

#### .NET Compact Framework

Supported in: 2.0, 1.0

#### XNA Framework

Supported in: 1.0