2017-06-21 1 views
-3

表1 RollNo 名私は3つのテーブルを持っています。 iが参加(1のマッピングテーブルと2)

表2 SubjectId のSubjectName

表3 RollNo 私はLINQを必要

をSubjectId実行する必要が私が表題1と一緒に主題の名前を得ることができる3つのステートメントすべてを結合するステートメント

期待される結果

ロールなし名前科目

1 Abcの数学

1 Abcの科学

2エクシーズ数学

+0

は、すでに何かを試してみましたか?何がうまくいかなかったのですか? – martennis

+0

最初に、テーブル1とテーブル3に参加した後、2と3を結合しました。 次に、上記の2つの結果に参加する必要があります。 私は1つのクエリで実行したい –

+0

ええ、それはあなたが働いている環境でも明確ではありません。どのタイプのLINQ、マッピング、クラス、データベース、...あなたは多対多の関連付けを照会しようとする最初の人ではありません。同様のケースを見つけることができるはずです。 –

答えて

0
var data= (from t1 in table1 join t3 in table3 on t1.RollNo equals t3.RollNo 
           join t2 in table2 on t3.SubjectId equals t2.SubjectId 

select new datadto{ Name = t1.Name, SubjectName= t2.SubjectName}).ToArray() 
+0

1つの生徒が複数の科目を選択する可能性があるので、表2の科目のリストを取得します。 –

+0

ok ...結果の期待はどういう意味ですか.........名前、副1、副2 ...一行で – Vinoth

+0

はい、あなたは正しいです 私は質問を編集しました 質問 –

関連する問題