Mapeamento de tabelaTable Mapping

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 ficarão disponíveis quando você instalar um provedor de banco de dados relacional (devido ao pacote Microsoft.EntityFrameworkCore.Relational compartilhado).The extension methods shown here will become available when you install a relational database provider (due to the shared Microsoft.EntityFrameworkCore.Relational package).

Mapeamento de tabela identifica quais dados de tabela devem ser consultados a partir e salvos no banco de dados.Table mapping identifies which table data should be queried from and saved to in the database.

ConvençõesConventions

Por convenção, cada entidade será configurada para mapear para uma tabela com o mesmo nome que o DbSet<TEntity> propriedade que expõe a entidade no contexto derivado.By convention, each entity will be set up to map to a table with the same name as the DbSet<TEntity> property that exposes the entity on the derived context. Se nenhum DbSet<TEntity> está incluído para a entidade especificada, o nome da classe é usado.If no DbSet<TEntity> is included for the given entity, the class name is used.

Anotações de dadosData Annotations

Você pode usar anotações de dados para configurar a tabela que mapeia um tipo.You can use Data Annotations to configure the table that a type maps to.

using System.ComponentModel.DataAnnotations.Schema;
[Table("blogs")]
public class Blog
{
    public int BlogId { get; set; }
    public string Url { get; set; }
}

Você também pode especificar um esquema que a tabela pertence.You can also specify a schema that the table belongs to.

[Table("blogs", Schema = "blogging")]
public class Blog
{
    public int BlogId { get; set; }
    public string Url { get; set; }
}

API fluenteFluent API

Você pode usar a API Fluent para configurar a tabela que mapeia um tipo.You can use the Fluent API to configure the table that a type maps to.

using Microsoft.EntityFrameworkCore;
class MyContext : DbContext
{
    public DbSet<Blog> Blogs { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Blog>()
            .ToTable("blogs");
    }
}

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

Você também pode especificar um esquema que a tabela pertence.You can also specify a schema that the table belongs to.

        modelBuilder.Entity<Blog>()
            .ToTable("blogs", schema: "blogging");