列のマッピングColumn Mapping

注意

このセクションの構成は、一般にリレーショナル データベースに適用されます。The configuration in this section is applicable to relational databases in general. ここで示すように拡張メソッドが使用可能になるリレーショナル データベース プロバイダーをインストールするときに (共有のためMicrosoft.EntityFrameworkCore.Relationalパッケージ)。The extension methods shown here will become available when you install a relational database provider (due to the shared Microsoft.EntityFrameworkCore.Relational package).

列マッピングは、列データをからクエリし、データベース内に保存する必要がありますを識別します。Column mapping identifies which column data should be queried from and saved to in the database.

規則Conventions

慣例により、各プロパティをプロパティと同じ名前の列にマップするセットアップとなります。By convention, each property will be setup to map to a column with the same name as the property.

データの注釈Data Annotations

データ注釈を使用して、プロパティがマップされている列を構成することができます。You can use Data Annotations to configure the column to which a property is mapped.

public class Blog
{
    [Column("blog_id")]
    public int BlogId { get; set; }
    public string Url { get; set; }
}

Fluent APIFluent API

Fluent API を使用して、プロパティがマップされている列を構成することができます。You can use the Fluent API to configure the column to which a property is mapped.

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

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Blog>()
            .Property(b => b.BlogId)
            .HasColumnName("blog_id");
    }
}

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