列マッピング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 set up 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; }
}