0

에 삽입 나는이 객체가있을 때 : 엔티티 프레임 워크 모델에서피할 필요가 삽입 서브 클래스 엔티티 프레임 워크

public class Person 
{ 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    public Address Address { get; set; } 
} 

public class Address 
{ 
    public string Street { get; set; } 
    public Locality Locality { get; set; } 
} 

public class Locality 
{ 
    public string City { get; set; } 
    public string ZipCode { get; set; } 
} 

, 내가이 일을 해요이 PERSON, ADDRESS, LOCALITY

있습니다

Mapper.CreateMap<Person, PERSON>(); 
Mapper.CreateMap<Address, ADDRESS>(); 
    .ForMember(x => x.Locality, opt => opt.Ignore()) 

데이터베이스에 Person을 새로 삽입하려고 시도하면 Profiler (Entity Framework Profiler)에서 지역 테이블에 삽입 된 것을 볼 수 있습니다. 나는 단지 그것을 삽입하는 사용자를 원한다.

아이디어가 있으십니까?

+0

User 클래스/테이블을 설명 할 수 있습니까? 아니면 person = user입니까? – Maarten

+0

죄송합니다. 오타 (수정 됨). 감사, –

+0

매핑 후 Entity Framework 데이터 클래스의 정확한 내용은 무엇입니까? –

답변

0

StatePerson에서 EntityState.Unchanged으로 설정해야합니다.

context.ObjectStateManager 
    .ChangeObjectState 
    (newPerson.Locality, System.Data.EntityState.Unchanged);