Crear un tipo que acepta valores NULL en el Diseñador de clases
Determinados tipos de valor no siempre tienen (o necesitan) un valor definido. Esto es habitual en las bases de datos, donde es posible que algunos campos no tengan asignado ningún valor. Por ejemplo, se podría asignar un valor nulo a un campo de base de datos para indicar que aún no se le ha asignado ningún valor.
Un tipo que acepta valores NULL es un tipo de valor que se amplía para que acepte el intervalo normal de valores para ese tipo y además un valor nulo. Por ejemplo, a un valor NULL de Int32
, también conocido como Nullable<Int32>, se le puede asignar cualquier valor comprendido entre -2147483648 y 2147483647, o se le puede asignar un valor nulo. A un valor Nullable<bool> se le pueden asignar los valores True
, False
o null (ningún valor).
Los tipos que aceptan valores NULL son instancias de la estructura Nullable<T>. Cada instancia de un tipo que acepta valores NULL tiene dos propiedades públicas de solo lectura, HasValue
y Value
:
HasValue
es de tipobool
e indica si la variable contiene un valor definido.True
significa que la variable contiene un valor que no es nulo. Puede probar un valor definido mediante una instrucción comoif (x.HasValue)
oif (y != null)
.Value
es del mismo tipo que el tipo subyacente. SiHasValue
esTrue
,Value
contiene un valor significativo. SiHasValue
esFalse
, al acceder aValue
se producirá una excepción de operación no válida.
De forma predeterminada, cuando se declara una variable como un tipo que acepta valores NULL, no tiene ningún valor definido (HasValue
es False
) más que el valor predeterminado de su tipo de valor subyacente.
El Diseñador de clases muestra un tipo que acepta valores NULL al igual que muestra su tipo subyacente.
Para más información sobre los tipos que aceptan valores NULL en C#, vea Tipos que aceptan valores NULL. Para más información sobre los tipos que aceptan valores NULL en Visual Basic, vea Tipos que admiten valores null.
Nota
Es posible que el equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio en este artículo. Puede que esté usando una edición diferente de Visual Studio u otra configuración del entorno. Para obtener más información, vea Personalizar el IDE.
Para agregar un tipo que acepta valores NULL mediante el Diseñador de clases
En el diagrama de clases, expanda una clase existente o cree una nueva.
Para agregar una clase al proyecto, en el menú Diagrama de clases, haga clic en Agregar>Agregar clase.
Para expandir la forma de clase, en el menú Diagrama de clases, haga clic en Expandir.
Seleccione la forma de clase. En el menú Diagrama de clases, haga clic en Agregar>Campo. Un nuevo campo con el nombre predeterminado Campo aparecerá en la forma de clase y también en la ventana Detalles de clase.
En la columna Nombre de la ventana Detalles de clase (o en la propia forma de clase), cambie el nombre del nuevo campo por un nombre válido y significativo.
En la columna Tipo de la ventana Detalles de clase, declare el tipo como un tipo que acepta valores NULL al especificar lo siguiente:
int?
(Visual C#)Nullable(Of Integer)
(Visual Basic)
Para agregar un tipo que acepta valores NULL mediante el Editor de código
Agregue una clase al proyecto. Seleccione el nodo de proyecto en el Explorador de soluciones y, en el menú Proyecto, haga clic en Agregar clase.
En el archivo .cs o .vb de la nueva clase, agregue uno o más tipos que aceptan valores NULL en la nueva clase para la declaración de clase.
En Vista de clases, arrastre el icono de la nueva clase a la superficie de diseño Diseñador de clases. Aparece una forma de clase en el diagrama de clases.
Expanda los detalles de la forma de clase y mueva el puntero del mouse sobre los miembros de la clase. La información sobre herramientas muestra la declaración de cada miembro.
Haga clic con el botón derecho en la forma de clase y haga clic en Detalles de clase. Puede ver o modificar las propiedades del nuevo tipo en la ventana Detalles de clase.