PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Incrémentation automatique sur une clé primaire partielle avec Entity Framework Core

Eh bien, ces annotations de données devraient faire l'affaire, peut-être est-ce lié au fournisseur PostgreSQL.

À partir de la documentation EF Core :

Selon le fournisseur de base de données utilisé, les valeurs peuvent être générées côté client par EF ou dans la base de données. Si la valeur est générée par la base de données, EF peut attribuer une valeur temporaire lorsque vous ajoutez l'entité au contexte. Cette valeur temporaire sera alors remplacée par la valeur générée par la base de données lors de SaveChanges .

Vous pouvez également essayer avec cette configuration Fluent Api :

modelBuilder.Entity<Foo>()
            .Property(f => f.Id)
            .ValueGeneratedOnAdd();

Mais comme je l'ai dit plus tôt, je pense que c'est quelque chose lié au fournisseur de base de données. Essayez d'ajouter une nouvelle ligne à votre base de données et vérifiez plus tard si une valeur a été générée pour le Id colonne.