質問編集履歴

2

リンクの追加

2020/09/15 09:08

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,6 @@
1
1
  linqのjoinを使って二つのlistを結合しようとしているのですが、出力されたlistの要素が少なく、疑問に思っていたところ結合には内部結合と外部結合があることを知りました。現在のコードだと、内部結合になっているため、ProjectDetailの中で、担当者IDが存在している三件分のデータしかリストに入っておりません。本来の意図としては、担当者IDが存在していないデータについては空白として扱いたいため、外部結合を実装しているのですがうまく実装できておりません。
2
2
 
3
- https://csharp-ref.com/program_linq-lambda-join.html
3
+ [参考サイト](https://csharp-ref.com/program_linq-lambda-join.html)
4
-
5
- ↑参考にしました。
6
4
 
7
5
  お力添えいただけると幸いです。
8
6
 
@@ -112,7 +110,7 @@
112
110
 
113
111
  ```
114
112
 
115
- 公式リファレンス(https://docs.microsoft.com/ja-jp/dotnet/csharp/linq/perform-left-outer-joins)
113
+ [公式リファレンス](https://docs.microsoft.com/ja-jp/dotnet/csharp/linq/perform-left-outer-joins)
116
114
 
117
115
  通りにやってみたのですがエラー「匿名型のメンバー宣言子が無効です。」が出ています。
118
116
 

1

情報の追加

2020/09/15 09:08

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -105,3 +105,25 @@
105
105
  開発環境
106
106
 
107
107
  VS2012
108
+
109
+ ```
110
+
111
+ 追記
112
+
113
+ ```
114
+
115
+ 公式リファレンス(https://docs.microsoft.com/ja-jp/dotnet/csharp/linq/perform-left-outer-joins)
116
+
117
+ 通りにやってみたのですがエラー「匿名型のメンバー宣言子が無効です。」が出ています。
118
+
119
+ ```
120
+
121
+ List<CompanyDisplay> companyList = new List<CompanyDisplay>();
122
+
123
+ var query = from Matter in m_matterList join Detail in m_detailList on Matter equals Detail.m_matterID into gj
124
+
125
+ from subpet in gj.DefaultIfEmpty()
126
+
127
+ select new { person.FirstName, PetName = subpet?.m_matterID ?? int.Empty };
128
+
129
+ ```