私はループでこれを行うことができることを知っています(実際のところ、私は現在そうですが、Linqスキルを習得/向上させようとしています。また、それがより効率的なソリューションを提供することを願っています.だから、ここに私のシナリオがあります:
次の 3 つのリストがあるとします (同様の例を作成しているだけなので、ばかげていることを許してください)。
Dim lstTeachers as New List(of string)
Dim lstStudentsSex as New List(of string)
Dim lstStudentName as New List(of string)
そして、それらは、例えば、次のとおりです。
lstTeachers: lstStudentsSex: lstStudentName:
Teacher 1 Male Whatever Name 1
Teacher 2 Female Whatever Name 2
Teacher 1 Female Whatever Name 3
Teacher 1 Female Whatever Name 4
Teacher 2 Male Whatever Name 5
Teacher 3 Male Whatever Name 6
Teacher 3 Female Whatever Name 7
Teacher 1 Male Whatever Name 8
Teacher 1 Female Whatever Name 9
Teacher 2 Male Whatever Name 10
各リストの各エントリが同じインデックスを持つ他のエントリと一致する場所 - 基本的にデータテーブルのように、別々のリストに格納されているだけです。
ここで、次の値を持つ次の構造を作成するとします。
Dim dictTeacherSexName as New Dictionary(Of String, Dictionary(Of String, List(of String)))
Dict1_Key: Dict1_Value / Dict2_Key: Dict2_Value:
Teacher 1 Male Whatever Name 1
Whatever Name 8
Female Whatever Name 3
Whatever Name 4
Whatever Name 9
Teacher 2 ...
...これで私が達成しようとしていることを説明できれば幸いです。
繰り返しますが、これはばかげた考えかもしれませんが、Linq のスキルを向上させたいので質問しています。特に、Group By と複数の Selects がまだ私を捕まえているので、助けてください。
本当にありがとう!