Clés primairesPrimary Keys

Note

La configuration de cette section s’applique aux bases de données relationnelles en général.The configuration in this section is applicable to relational databases in general. Les méthodes d’extension indiqués ici devient disponibles lorsque vous installez un fournisseur de base de données relationnelle (en raison de l’élément partagé Microsoft.EntityFrameworkCore.Relational package).The extension methods shown here will become available when you install a relational database provider (due to the shared Microsoft.EntityFrameworkCore.Relational package).

Une contrainte de clé primaire est introduite pour la clé de chaque type d’entité.A primary key constraint is introduced for the key of each entity type.

ConventionsConventions

Par convention, la clé primaire dans la base de données est nommée PK_<type name>.By convention, the primary key in the database will be named PK_<type name>.

Annotations de donnéesData Annotations

Aucun des aspects spécifiques de la base de données relationnelles d’une clé primaire ne peuvent être configurés à l’aide des Annotations de données.No relational database specific aspects of a primary key can be configured using Data Annotations.

API FluentFluent API

Vous pouvez utiliser l’API Fluent pour configurer le nom de la contrainte de clé primaire dans la base de données.You can use the Fluent API to configure the name of the primary key constraint in the database.

class MyContext : DbContext
{
    public DbSet<Blog> Blogs { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Blog>()
            .HasKey(b => b.BlogId)
            .HasName("PrimaryKey_BlogId");
    }
}

public class Blog
{
    public int BlogId { get; set; }
    public string Url { get; set; }
}