>백엔드 개발 >C++ >먼저 Entity Framework 코드에서 속성을 무시하는 방법은 무엇입니까?

먼저 Entity Framework 코드에서 속성을 무시하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2025-01-13 16:18:42843검색

How to Ignore Properties in Entity Framework Code First?

Entity Framework 4.1 Code First에서 무시되는 속성

Entity Framework(EF) 4.1 Code First에서는 [NotMapped] 속성 데이터 주석을 사용하여 데이터베이스 매핑에서 특정 속성을 제외할 수 있습니다. 이 주석은 엔터티 클래스의 해당 속성에 적용됩니다.

<code class="language-csharp">public class Customer
{
    public int CustomerID { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    [NotMapped]
    public int Age { get; set; }
}</code>

[NotMapped] 속성은 System.ComponentModel.DataAnnotations 네임스페이스의 일부입니다.

또한 Fluent API를 사용하여 DbContext 클래스의 OnModelCreating 함수를 재정의할 수 있습니다.

<code class="language-csharp">protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
   modelBuilder.Entity<Customer>().Ignore(t => t.LastName);
   base.OnModelCreating(modelBuilder);
}</code>

원래 질문에 제안된 EF 버전은 오래되었습니다. NuGet의 최신 안정 버전은 EF 4.3입니다.

업데이트(2017년 9월): Asp.NET Core(2.0)

Asp.NET Core 2.0 이상의 경우 앞서 언급한 [NotMapped] 특성을 사용할 수 있습니다. 또한 Fluent API는 다음과 같이 사용할 수 있습니다.

<code class="language-csharp">public class SchoolContext : DbContext
{
    public SchoolContext(DbContextOptions<SchoolContext> options) : base(options)
    {
    }
    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Customer>().Ignore(t => t.FullName);
        base.OnModelCreating(modelBuilder);
    }
    public DbSet<Customer> Customers { get; set; }
}</code>

위 내용은 먼저 Entity Framework 코드에서 속성을 무시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.