Chaves primáriasPrimary Keys

Observação

A configuração nesta seção é aplicável a bancos de dados relacionais em geral.The configuration in this section is applicable to relational databases in general. Os métodos de extensão mostrados aqui estará disponíveis quando você instala um provedor de banco de dados relacional (devido a compartilhado Microsoft.EntityFrameworkCore.Relational pacote).The extension methods shown here will become available when you install a relational database provider (due to the shared Microsoft.EntityFrameworkCore.Relational package).

Uma restrição de chave primária é introduzida para a chave de cada tipo de entidade.A primary key constraint is introduced for the key of each entity type.

ConvençõesConventions

Por convenção, a chave primária no banco de dados será nomeada PK_<type name>.By convention, the primary key in the database will be named PK_<type name>.

Anotações de dadosData Annotations

Nenhum aspectos específicos do banco de dados relacional de uma chave primária podem ser configurados usando as anotações de dados.No relational database specific aspects of a primary key can be configured using Data Annotations.

API fluenteFluent API

Você pode usar a API fluente para configurar o nome da restrição de chave primária no banco de dados.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; }
}