엔터티 속성에서 NotMapped 특성을 사용할 때 EF7 마이그레이션 추가 오류

asp.net-core c# code-first-migrations entity-framework entity-framework-core

문제

마이그레이션 추가 명령이 아래 오류를 발생시키기 때문에 엔터티 속성에서 [NotMapped] 특성을 사용할 수 없습니다.

여기 내 POCO가 있습니다.

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace Domain.Entities
{
    public partial class Employer
    {
        public int EmployerId { get; set; }
        public bool? Blacklisted { get; set; }
        [NotMapped]
        public int TestProperty { get; set; }
    }
}

그리고이 예외 메시지가 나타납니다.

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace Domain.Entities
{
    public partial class Employer
    {
        public int EmployerId { get; set; }
        public bool? Blacklisted { get; set; }
        [NotMapped]
        public int TestProperty { get; set; }
    }
}

그리고 이것들은 패키지 의존성입니다.

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace Domain.Entities
{
    public partial class Employer
    {
        public int EmployerId { get; set; }
        public bool? Blacklisted { get; set; }
        [NotMapped]
        public int TestProperty { get; set; }
    }
}

내 엔티티 속성에서 [NotMapped] 특성을 사용할 수없는 이유에 대한 아이디어가 있습니까?

업데이트 : Don이 제안한 것처럼 주석 대신 Fluent-API를 사용하지만 여전히 주석을 사용하려고합니다. 내 목표는 기본 엔티티에 [NotMapped] 속성을 추가하여 자식 엔티티에 추가 할 필요가 없도록하는 것입니다.

이것이 내가 성취하려고하는 것입니다.

Id 열을 데이터베이스에 추가하지 않고 기본 Id 속성을 엔티티의 기본 키에 매핑합니다.

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace Domain.Entities
{
    public partial class Employer
    {
        public int EmployerId { get; set; }
        public bool? Blacklisted { get; set; }
        [NotMapped]
        public int TestProperty { get; set; }
    }
}

수락 된 답변

Fluent-API 사용을 시도하십시오.

modelBuilder.Entity<Employer>().Ignore(e => e.TestProperty);



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.