2009-06-10 4 views
0

私は2つのエンティティ - ClassroomSectionを持っています。これはNHibernateのマッピングに助けが必要です。 ClassroomSectionsのコレクションを持っています。 Sectionには、その所有者Classroomへの参照が戻っています。データベース側でHiberateマッピングの質問

public class Classroom 
{ 
    public int Id { get; set; }   
    public ISet<Section> Sections { get; set; } 
} 

public class Section 
{ 
    public int Id { get; set; } 
    public Classroom Classroom { get; set; } 
} 

:コード側で

CREATE TABLE Classroom (
    ClassroomID int 
) 

CREATE TABLE ClassroomSection (
    ClassroomID int, 
    SectionID int, 
    IsActive bit 
) 

CREATE TABLE Section (
    SectionID 
) 

この一対多マッピングであっても、上記から分かるように、 3番目のマッピングテーブルClassroomSectionがあります。このマッピングテーブルには、IsActiveのような独自のフィールドがいくつかあります。ドメインロジックを持たないため、ClassroomSectionのエンティティを自分のコードに作成する必要はありません。しかし、私はこの表のフィールドにアクセスしたいです。双方向マッピングの助けをいただければ幸いです。

ありがとうございます! ClassroomSectionは値オブジェクトではなく、実体であるよう

答えて

0

ですね、それは正しいでしょうか?

+0

私はClassroomSectionは何もないと思います。クラスルームとセクション間のマッピングテーブルです。 –

0

ポストあなたがのisActiveにアクセスできるようにしたいのですがどのようにいくつかのサンプルコード。

Ayendeの最新の記事は、あなたが達成しようとしているものにいくつかのヒントを与えるかもしれない:http://ayende.com/Blog/archive/2009/06/10/nhibernate-ndash-query-only-properties.aspx

+0

あなたはすばらしい質問をします。なぜ私はこれについて前に考えなかったのか分かりません。 IsActiveにはどのようにアクセスする必要がありますか?私はそれをセクションのエンティティに生かせます。それから私は、セクションのマッピングでClassroomSectionにを行うことができます。しかし、セクション自体にIsActiveフィールドがあります。私はすべての後にClassroomSectionエンティティを作成する必要がありますように見えます。私は周りを回っているとは思わない。 –