1 out of 2 rated this helpful - Rate this topic

Nullable<T>.HasValue Property

Gets a value indicating whether the current Nullable<T> object has a value.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)
public bool HasValue { get; }

Property Value

Type: System.Boolean
true if the current Nullable<T> object has a value; false if the current Nullable<T> object has no value.

If the HasValue property is true, the value of the current Nullable<T> object can be accessed with the Value property.

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.

// 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.

*/

.NET Framework

Supported in: 4.5, 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

.NET for Windows Store apps

Supported in: Windows 8

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.