J'ai une table en SQL, dans cette table j'ai la colonne DateTime avec une valeur par défaut de GetDate ()
Dans le cadre de l'entité, j'aimerais qu'il utilise l'heure de la date SQL au lieu de l'heure locale de l'ordinateur sur lequel l'application de la console s'exécute (le serveur SQL a 1 heure de retard).
La colonne n'autorise pas non plus les valeurs NULL, elle passe actuellement dans une date de 1/1/0001 et j'obtiens une erreur:
La conversion d'un type de données datetime2 en un type de données datetime a entraîné une valeur hors limites. \ R \ nL'instruction a été arrêtée.
Je vous remercie!
StoreGeneratedPattern
de None
en Computed
Cela indiquera à EF de ne pas insérer de valeur pour cette colonne, ainsi la colonne obtiendra la valeur par défaut générée par la base de données. Gardez à l'esprit que vous ne pourrez pas transmettre une valeur.
Si vous utilisez l'API Fluent, ajoutez simplement ceci à votre classe DbContext:
modelBuilder.Entity<EntityName>()
.Property(p => p.PropertyName)
.HasDatabaseGeneratedOption(DatabaseGeneratedOption.Computed);