Créer un type Nullable dans le Concepteur de classes

Certains types valeur n’ont pas toujours (ou ont besoin) d’une valeur définie. Il s’agit d’une pratique courante dans les bases de données, où certains champs peuvent ne pas être affectés à une valeur. Par exemple, vous pouvez affecter une valeur Null à un champ de base de données pour indiquer qu’elle n’a pas encore été affectée à une valeur.

Un type Nullable est un type valeur que vous étendez afin qu’il accepte la plage classique de valeurs pour ce type et également une valeur Null. Par exemple, une valeur Nullable de Int32, également désignée comme Nullable<Int32>, peut être affectée à n’importe quelle valeur de -2147483648 à 2147483647, ou elle peut être affectée à une valeur Null. Un bool Nullable< peut avoir les valeurs True, False ou null (aucune valeur).

Les types nullables sont des instances de la Nullable<T> structure. Chaque instance d’un type nullable a deux propriétés publiques en lecture seule, HasValue et Value :

  • HasValue est de type bool et indique si la variable contient une valeur définie. True signifie que la variable contient une valeur non null. Vous pouvez tester une valeur définie à l’aide d’une instruction telle que if (x.HasValue) ou if (y != null).

  • Value est du même type que le type sous-jacent. Si HasValue est True, Value contient une valeur significative. Si HasValue est False, accéder à Value déclenchera une exception d’opération non valide.

Par défaut, lorsque vous déclarez une variable en tant que type Nullable, elle n’a aucune valeur définie (HasValue est False), autre que la valeur par défaut de son type valeur sous-jacente.

Le Concepteur de classes affiche un type nullable tout comme il affiche son type sous-jacent.

Pour plus d’informations sur les types nullables en C#, consultez Types Nullable. Pour plus d’informations sur les types nullables dans Visual Basic, consultez Types valeur nullable.

Remarque

Les instructions dans cet article illustrent la version la plus récente de l’expérience de développement interactif (IDE) disponible dans Visual Studio. Votre ordinateur peut afficher des noms ou des emplacements différents pour certains des éléments de l’interface utilisateur. Il se peut que vous utilisiez une autre version de Visual Studio ou d’autres paramètres d’environnement. Pour plus d’informations, consultez Personnaliser l’IDE.

Pour ajouter un type Nullable à l’aide du Concepteur de classes

  1. Dans le diagramme de classes, développez une classe existante ou créez une classe.

  2. Pour ajouter une classe au projet, dans le menu Diagramme de classes , cliquez sur Ajouter>une classe.

  3. Pour développer la forme de classe, dans le menu Diagramme de classes , cliquez sur Développer.

  4. Sélectionnez la forme de classe. Dans le menu Diagramme de classes , cliquez sur Ajouter>un champ. Un nouveau champ qui a le nom par défaut Champ s’affiche dans la forme de classe et également dans la fenêtre Détails de la classe .

  5. Dans la colonne Nom de la fenêtre Détails de la classe (ou dans la forme de classe elle-même), remplacez le nom du nouveau champ par un nom valide et explicite.

  6. Dans la colonne Type de la fenêtre Détails de la classe , déclarez le type en tant que type nullable en spécifiant les éléments suivants :

    • int? (Visual C#)
    • Nullable(Of Integer) (Visual Basic)

Pour ajouter un type Nullable à l’aide de l’Éditeur de code

  1. Ajoutez une classe au projet. Sélectionnez le nœud du projet dans l’Explorateur de solutions, puis, dans le menu Projet , cliquez sur Ajouter une classe.

  2. Dans le fichier .cs ou .vb pour la nouvelle classe, ajoutez un ou plusieurs types Nullables dans la nouvelle classe à la déclaration de classe.

    // Declare a nullable type in Visual C#:
    class Test
    {
       int? building_number = 5;
    }
    
  3. À partir de la vue des classes, faites glisser l'icône de la nouvelle classe vers la surface de conception du Concepteur de classes. Une forme de classe apparaît dans le diagramme de classes.

  4. Développez les détails de la forme de classe et déplacez le pointeur de la souris sur les membres de la classe. L'infobulle affiche la déclaration de chaque membre.

  5. Cliquez avec le bouton droit sur la forme de classe, puis cliquez sur Détails de la classe. Vous pouvez afficher ou modifier les propriétés du nouveau type dans la fenêtre Détails de la classe.