Nullable(T).Value Property (System)

Switch View :
ScriptFree
.NET Framework Class Library
Nullable<T>.Value Property

Gets the value of the current Nullable<T> value.

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

Visual Basic
Public ReadOnly Property Value As T
C#
public T Value { get; }
Visual C++
public:
property T Value {
	T get ();
}
F#
member Value : 'T

Property Value

Type: T
The value of the current Nullable<T> object if the HasValue property is true. An exception is thrown if the HasValue property is false.
Exceptions

Exception Condition
InvalidOperationException

The HasValue property is false.

Examples

The following code example returns the value of a Nullable<T> object if that object has a defined value; otherwise, a default value is returned.

Visual Basic

' This code example demonstrates the Nullable(Of T).HasValue 
' and Value properties.

Imports System

Class Sample
    Public Shared Sub Main() 
        Dim myNow As Nullable(Of DateTime)

    '  Assign the current date and time to myNow then display its value.
        myNow = DateTime.Now
        Display(myNow, "1) ")

    '  Assign null (Nothing in Visual Basic) to myNow then display its value.
        myNow = Nothing
        Display(myNow, "2) ")
    End Sub 'Main

    ' Display the date and time.
    Public Shared Sub Display(ByVal displayDateTime As Nullable(Of DateTime), _
                              ByVal title As String) 

    ' If the HasValue property for the nullable of DateTime input argument is true, 
    ' display the value of the input argument; otherwise, display that no value is
    ' defined for the input value.
        Console.Write(title)
        If displayDateTime.HasValue = True Then
            Console.WriteLine("The date and time is {0:F}.", displayDateTime.Value)
        Else
            Console.WriteLine("The date and time is not defined.")
        End If
    End Sub 'Display 

End Class 'Sample '

'This code example produces the following results:
'
'1) The date and time is Tuesday, April 19, 2005 4:16:06 PM.
'2) The date and time is not defined.
'


C#

// This code example demonstrates the Nullable<T>.HasValue 
// and Value properties.

using System;

class Sample 
{
    public static void Main() 
    {
    DateTime? myNow;

//  Assign the current date and time to myNow then display its value.
    myNow = DateTime.Now;
    Display(myNow, "1) ");

//  Assign null (Nothing in Visual Basic) to myNow then display its value.
    myNow = null;
    Display(myNow, "2) ");
    }

// Display the date and time.
    public static void Display(DateTime? displayDateTime, string title)
    {
// If a value is defined for the displayDatetime argument, display its value; otherwise, 
// display that no value is defined.
    Console.Write(title);
    if (displayDateTime.HasValue == true)
        Console.WriteLine("The date and time is {0:F}.", displayDateTime.Value);
    else
        Console.WriteLine("The date and time is not defined.");
    }
}

/*
This code example produces the following results:

1) The date and time is Tuesday, April 19, 2005 4:16:06 PM.
2) The date and time is not defined.

*/


Version Information

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library
Platforms

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
See Also

Reference