Enumerable.Max Method (IEnumerable<Nullable<Decimal>>)

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Returns the maximum value in a sequence of nullable Decimal values.

Namespace:  System.Linq
Assembly:  System.Core (in System.Core.dll)


<ExtensionAttribute> _
Public Shared Function Max ( _
    source As IEnumerable(Of Nullable(Of Decimal)) _
) As Nullable(Of Decimal)
public static Nullable<decimal> Max(
    this IEnumerable<Nullable<decimal>> source


Return Value

Type: System.Nullable<Decimal>
A value of type Nullable<Decimal> in C# or Nullable(Of Decimal) in Visual Basic that corresponds to the maximum value in the sequence. 

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IEnumerable<Nullable<Decimal>>. When you use instance method syntax to call this method, omit the first parameter.


Exception Condition

source is nulla null reference (Nothing in Visual Basic).


The Max(IEnumerable<Nullable<Decimal>>) method uses the Decimal implementation of IComparable<T> to compare values.

If the source sequence is empty or contains only values that are nulla null reference (Nothing in Visual Basic), this function returns nulla null reference (Nothing in Visual Basic).

In Visual Basic query expression syntax, an Aggregate Into Max() clause translates to an invocation of Max.


The following code example demonstrates how to use Max(IEnumerable<Nullable<Double>>) to determine the maximum value in a sequence.


This code example uses an overload of this overloaded method that is different from the specific overload that this topic describes. To extend the example to this topic, substitute the elements of the source sequence with elements of the appropriate numerical type.

      ' Create an array of Nullable Double values.
      Dim doubles() As Nullable(Of Double) = _
          {Nothing, 1.5E+104, 9.0E+103, -2.0E+103}

      ' Determine the maximum value in the array.
      Dim max As Nullable(Of Double) = doubles.Max()

      ' Display the result.
      outputBlock.Text &= "The largest number is " & max & vbCrLf

      ' This code produces the following output:
      ' The largest number is 1.5E+104

      double?[] doubles = { null, 1.5E+104, 9E+103, -2E+103 };

      double? max = doubles.Max();

      outputBlock.Text += String.Format("The largest number is {0}.", max) + "\n";

       This code produces the following output:

       The largest number is 1.5E+104.

Version Information


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0


For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.