2014-02-05 5 views
0

내 항목은 'Books'& 'Categories'입니다. 각 책은 여러 범주를 가질 수 있으며 각 범주는 여러 책과 관련 될 수 있습니다.BreezeJs : 다 대 다 관계

public class Book 
{ 
    [Key]   
    [DataMember] 
    public Guid BookId { get; set; } 

    public virtual ICollection<Category> Categories { get; set; } 
} 

public class Category 
{ 
    [Key] 
    [DataMember] 
    public Guid CategoryId { get; set; } 
} 

내 DbContext이 같다 :

내가이 같은 모델을 만들어이를 구현하려면 클라이언트 측에서

// Some code 

public DbSet<Book> Books { get; set; } 
public DbSet<Category> Categories { get; set; } 

protected override void OnModelCreating(DbModelBuilder modelBuilder) 
{ 
    modelBuilder.Entity<Book>() 
     .HasMany(c => c.Categories) 
     .WithMany() 
     .Map(x => 
     { 
      x.MapLeftKey("BookId"); 
      x.MapRightKey("CategoryId"); 
      x.ToTable("BookCategoryMapping"); 
     }); 

} 

// Some code 

, 책의 어떤 categories 키를 포함 나던 엔티티를 ???

내 모델이 맞는지 궁금합니다.

테이블 BookCategoryMapping가 생성되었지만 breeze를 사용하여 데이터를 채울 수없는 것으로 보입니다.

어떻게 breeze를 사용하여 책 엔티티를 만들고 카테고리를 푸시 할 수 있습니까?

감사합니다.

답변

1

서버 측에서는 EF는 BookCategoryMapping 테이블에 직접 행을 추가하여 BookCategory 사이의 관계를 만들 수 있습니다. 클라이언트의 Breeze는 그렇게 할 수 없습니다. BookCategoryMapping 엔티티를 만듦으로써 관계를 생성 할 수 있으며, saveChanges()으로 전화하면 서버로 전송됩니다.

엔티티로 BookCategoryMapping을 모델링해야합니다.

관련 문제