Entity Framework: Définissez nullable sur false, mais le type est toujours nullable

Cette question concerne un nouveau projet de bibliothèque de classes créé dans Visual Studio 2012.

J’ai ajouté une vue SQL Server à mon modèle de structure d’entité.

Dans les propriétés de la colonne PromisedDate , j’ai remplacé Nullable de (None) par False car aucune valeur NULL ne sera renvoyée dans cette colonne. J’ai vérifié deux fois qu’il n’y a pas de valeur NULL avec une instruction select.

Capture d'écran d'edmx montrant que nullable est défini sur false

Cependant, même après une sauvegarde, en fermant tous les tabs ouverts dans Visual Studio et en effectuant un nettoyage complet et une reconstruction de la solution, PromisedDate est toujours un DateTime? et je dois continuer à utiliser .Value dans le code pour en obtenir la valeur.

C’est frustrant, qu’est-ce que je fais de travers?!

Voici une capture d’écran du fichier .CS généré:

Capture d'écran de la classe générée montrant toujours nullable

Vous devriez suivre les étapes suivantes.

1) Enregistrez le fichier de concepteur et générez votre firebase database à partir du concepteur
2) Cliquez sur le fichier de contexte et le fichier de génération de code (T4), puis cliquez sur Exécuter l’outil personnalisé.
3) assurez-vous de sauvegarder le fichier à nouveau, un * apparaîtra après la génération de la firebase database.