2016-10-04 1 views
0

두 모델 WorkplacePerson 사이의 일대 다 관계가 변경되었습니다. Entity Framework에서 해당 개체를 연결하는 테이블을 올바르게 만들었으며 WorkplacePersons이라는 이름으로 정확하게 채워집니다.System.Data.SqlClient.SqlException : 잘못된 개체 이름 'dbo.PersonWorkplaces'. 일대 다에서 다 대다 관계로 변경 한 후

System.Data.SqlClient.SqlException : 잘못된 개체 이름 'dbo.PersonWorkplaces'가

그래서 어떤 이유로 그건 내가 직장에서 사람들의 목록을 표시 할 때 나는 예외를 얻었다 존재하지 않는 PersonWorkplaces을 찾고, 대신 당신은에 OnModelCreating를 정의 할 수 있습니다 WorkplacePersons

+0

'OnModelCreating'에서 어떤 맵핑을 추가 했습니까? –

답변

0

을 찾고 당신의 DbContext :

당신은 엔티티 프랑 말할 필요 당신 주변의 감각은 맵핑을 원합니다. 현재는 추측하고 테이블을 잘못된 방향으로 가져옵니다. 당신의 OnModelCreating에 다음을 추가하십시오 :

protected override void OnModelCreating(DbModelBuilder modelBuilder) 
{ 
    base.OnModelCreating(modelBuilder); 
    modelBuilder.Entity<Workplace>() 
     .HasMany(x => x.Persons) 
     .WithMany(x => x.Workplaces) 
     .Map(c => 
     { 
      c.MapLeftKey("WorkplaceId"); 
      c.MapRightKey("PersonId"); 
      c.ToTable("WorkplacePersons"); 
     }); 
} 
+0

어떻게 사람들의 목록을 표시하고 있습니까? –

+0

@Benji : 조인 테이블을 WorkplacePersons라고합니다. 이 매핑은 조인 테이블을이 테이블로 구성합니다. 어떤 시나리오가 있으며 조인 테이블을 정확히 호출 하시겠습니까? – DevilSuichiro

관련 문제