2016-07-24 5 views
0

流暢なAPIに親切に私に同行してください。私は3つの実体を持っています。学生、住所とコース、学生と住所は1:1の関係であり、学生とコースはm:m(多対多)でなければなりません。Fluent APIを使用して3つのエンティティで1対1と多対多に設定する

私の質問は、コースと住所のエンティティを多くのものに定義し、特定の住所(単方向の関連付け)によっていくつのコースが取られているか知りたい場合、学生に連絡するだけです。 以下は私の流暢なAPIのマッピング、私は外に構成を移動しました。

 public CourseMappings() 
       { 
        HasMany<User>(s => s.Student) 
         .WithMany(c => c.Course); 
       } 

public AddressMappings() 
      { 

       HasRequired(c => c.Student) 
       .WithRequiredDependent(u => u.Address); 
      } 


public StudentMapping() 
      { 

       HasRequired(c => c.Address) 
       .WithRequiredPrincipal(u => u.Student); 

      } 

私は流暢なAPIを使用してコースやアドレスエンティティをマッピングするにはどうすればよいです、本当に私はする必要または十分な学生&もちろんの協会ですか?

+1

生徒の住所に1対1の関係がありますか? 2人の学生が同じ住所を持つ可能性があります。しかし、それが当てはまる場合は、学生の住所のコースを照会することができ、新しい関係を定義する必要はありません。 –

答えて

1

あなたは学生 - コース協会を通して住所にアクセスできるので、コースと住所を地図にする必要はありません。あなたが学生にアクセスすると、あなたがしたことが大丈夫ですので、あなたは住所を得ることができます。

関連する問題