Nullable<T>.Value Propiedad

Definición

Obtiene el valor del objeto Nullable<T> actual si se asignó un valor subyacente válido.Gets the value of the current Nullable<T> object if it has been assigned a valid underlying value.

public:
 property T Value { T get(); };
public T Value { get; }
member this.Value : 'T
Public ReadOnly Property Value As T

Valor de propiedad

T

Valor del objeto Nullable<T> actual si la propiedad HasValue es true.The value of the current Nullable<T> object if the HasValue property is true. Si la propiedad HasValue es false, se produce una excepción.An exception is thrown if the HasValue property is false.

Excepciones

La propiedad HasValue es false.The HasValue property is false.

Ejemplos

En el ejemplo siguiente se usa la HasValue propiedad de un Nullable<int> Nullable(Of Integer) objeto (en Visual Basic) para determinar si debe mostrar la propiedad del objeto Value o su GetValueOrDefault propiedad.The following example uses the HasValue property of a Nullable<int> (Nullable(Of Integer) in Visual Basic) object to determine whether it should display the object's Value property or its GetValueOrDefault property.

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
Module Example
   Public Sub Main()
      Dim n1 As New Nullable(Of Integer)(10)
      Dim n2 As Nullable(Of Integer)
      Dim n3 As New Nullable(Of Integer)(20)
      n3 = Nothing
      Dim items() As Nullable(Of Integer) = { n1, n2, n3 }

      For Each item In items
         Console.WriteLine("Has a value: {0}", item.HasValue)
         If item.HasValue Then
            Console.WriteLine("Type: {0}", item.GetType().Name)
            Console.WriteLine("Value: {0}", item.Value)
         Else
            Console.WriteLine("Null: {0}", item Is Nothing)
            Console.WriteLine("Default Value: {0}", item.GetValueOrDefault())
         End If
         Console.WriteLine()
      Next                  
   End Sub
End Module
' 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

Comentarios

Si un valor de tipo T no se ha asignado al Nullable<T> objeto, puede compararlo con null y recuperar su HasValue propiedad, pero no puede tener acceso a su Value propiedad o llamar a sus demás miembros.If a value of type T has not been assigned to the Nullable<T> object, you can compare it to null and retrieve its HasValue property, but you cannot access its Value property or call its other members.

Se aplica a