Mapowanie tabeliTable Mapping

Uwaga

Ogólnie rzecz biorąc jest odpowiednie dla relacyjnych baz danych konfiguracji w tej sekcji.The configuration in this section is applicable to relational databases in general. Metody rozszerzenia, pokazane tutaj staną się dostępne po zainstalowaniu dostawcy relacyjnej bazy danych (z powodu udostępnionej Microsoft.EntityFrameworkCore.Relational pakietu).The extension methods shown here will become available when you install a relational database provider (due to the shared Microsoft.EntityFrameworkCore.Relational package).

Mapowanie tabeli identyfikuje dane, które tabeli powinien być odpytywane i zapisywane w bazie danych.Table mapping identifies which table data should be queried from and saved to in the database.

KonwencjeConventions

Zgodnie z Konwencją każdej jednostki będą konfigurowane tak, aby zamapować na tabelę z taką samą nazwę jak DbSet<TEntity> właściwość, która udostępnia jednostki w kontekście pochodnych.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. Jeśli nie DbSet<TEntity> jest dołączony do danej jednostki, nazwa klasy jest używana.If no DbSet<TEntity> is included for the given entity, the class name is used.

Adnotacje danychData Annotations

Korzystanie z adnotacji danych, aby skonfigurować tabelę, która mapuje typu.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; }
}

Można również określić schemat, który należy do tabeli.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; }
}

Interfejs Fluent APIFluent API

Interfejs Fluent API umożliwiają skonfigurowanie tabeli, która mapuje typu.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; }
}

Można również określić schemat, który należy do tabeli.You can also specify a schema that the table belongs to.

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