Mappage de colonnesColumn Mapping

Notes

La configuration indiquée dans cette section s’applique aux bases de données relationnelles en général.The configuration in this section is applicable to relational databases in general. Les méthodes d’extension indiquées ici sont disponibles quand vous installez un fournisseur de base de données relationnelle (en raison du package partagé 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).

Mappage de colonne identifie les données de la colonne doivent être interrogées à partir d’et enregistrées dans la base de données.Column mapping identifies which column data should be queried from and saved to in the database.

ConventionsConventions

Par convention, chaque propriété sera être configurée pour mapper à une colonne portant le même nom que la propriété.By convention, each property will be set up to map to a column with the same name as the property.

Annotations de donnéesData Annotations

Vous pouvez utiliser des Annotations de données pour configurer la colonne à laquelle une propriété est mappée.You can use Data Annotations to configure the column to which a property is mapped.

using Microsoft.EntityFrameworkCore;
using System.ComponentModel.DataAnnotations.Schema;

namespace EFModeling.Configuring.DataAnnotations.Samples.Relational.Column
{
    class MyContext : DbContext
    {
        public DbSet<Blog> Blogs { get; set; }
    }

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

API FluentFluent API

Vous pouvez utiliser l’API Fluent pour configurer la colonne à laquelle une propriété est mappée.You can use the Fluent API to configure the column to which a property is mapped.

using Microsoft.EntityFrameworkCore;

namespace EFModeling.Configuring.FluentAPI.Samples.Relational.Column
{
    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; }
    }
}