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 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).

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á instalado para mapear para uma tabela com o mesmo nome que o DbSet<TEntity> propriedade que expõe a entidade no contexto de derivada.By convention, each entity will be setup 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 as anotações de dados para configurar a tabela que é mapeado para 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 fluente para configurar a tabela que é mapeado para 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");