Incluir e excluir propriedadesIncluding & Excluding Properties

Incluindo uma propriedade no modelo significa que o EF tem metadados sobre essa propriedade e tentará ler e gravar valores de/para o banco de dados.Including a property in the model means that EF has metadata about that property and will attempt to read and write values from/to the database.

ConvençõesConventions

Por convenção, as propriedades públicas com um getter e um setter serão incluídas no modelo.By convention, public properties with a getter and a setter will be included in the model.

Anotações de dadosData Annotations

Você pode usar anotações de dados para excluir uma propriedade do modelo.You can use Data Annotations to exclude a property from the model.

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

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

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

        [NotMapped]
        public DateTime LoadedFromDatabase { get; set; }
    }
}

API fluenteFluent API

Você pode usar a API Fluent para excluir uma propriedade do modelo.You can use the Fluent API to exclude a property from the model.

using Microsoft.EntityFrameworkCore;
using System;

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

        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder.Entity<Blog>()
                .Ignore(b => b.LoadedFromDatabase);
        }
    }

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

        public DateTime LoadedFromDatabase { get; set; }
    }
}