Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Propiedad Nullable<T>.HasValue

 

Publicado: octubre de 2016

Obtiene un valor que indica si el objeto Nullable<T> actual tiene un valor válido de su tipo subyacente.

Espacio de nombres:   System
Ensamblado:  mscorlib (en mscorlib.dll)

public bool HasValue { get; }

Valor de propiedad

Type: System.Boolean

Es true si el objeto Nullable<T> actual tiene un valor; es false si el objeto Nullable<T> actual no tiene ningún valor.

Si el HasValue propiedad es true, el valor del elemento actual Nullable<T> objeto puede tener acceso mediante el Value propiedad. En caso contrario, se intenta tener acceso a su valor produce un InvalidOperationException excepción.

En el ejemplo siguiente se usa el HasValue propiedad de un Nullable<Integer> objeto para determinar si debe mostrar el objeto Value propiedad o su GetValueOrDefault propiedad.

using System;

public class Example
{
   public static void Main()
   {
      Nullable<int> n1 = new Nullable<int>(10);
      Nullable<int> n2 = null;
      Nullable<int> n3 = new Nullable<int>(20);
      n3 = null;
      Nullable<int>[] items = { n1, n2, n3 }; 

      foreach (var item in items) {
         Console.WriteLine("Has a value: {0}", item.HasValue);
         if (item.HasValue) {
            Console.WriteLine("Type: {0}", item.GetType().Name);
            Console.WriteLine("Value: {0}", item.Value);
         }
         else {
            Console.WriteLine("Null: {0}", item == null);
            Console.WriteLine("Default Value: {0}", item.GetValueOrDefault());
         }
         Console.WriteLine();
      }                  
   }
}
// The example displays the following output:
//       Has a value: True
//       Type: Int32
//       Value: 10
//       
//       Has a value: False
//       Null: True
//       Default Value: 0
//       
//       Has a value: False
//       Null: True
//       Default Value: 0

Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 2.0
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1
Volver al principio
Mostrar: