私はLINQについてもう少し理解し、もう少し使用したいと考えているので、ここで少し自己開発作業を行います...
次のようなオブジェクトがあります。
public class Player(){
public string Name{get;set;}
public Club currentClub{get;set;}
public IEnumerable<Club> previousClubs{get;set;}
}
さて、プレーヤーのリストが与えられたので、以前に選択したさまざまなクラブでプレーしたプレーヤーを選択したいと思います.foreachステートメントをネストすることで簡単に実行できますが、Linqで実行したいと思います.. .
私はこれを試しましたが、何も返されません:
var prevClubs =
from player in players
from clubOriginal in player.previousClubs
from clubSecond in player.previousClubs
from clubThird in player.previousClubs
where clubOriginal.ID == 1
where clubSecond.ID == 2
where clubThird.ID == 3
select new HistoryOfPlayer{
firstClub == clubOriginal.Name,
secondClub == clubSecond.Name,
thirdClub == clubThird.Name
}
私が間違っているところに助けはありますか?プレーヤーをループするループ内のクラブをループする foreach ループがあり、クラブ 1、2、および 3 でプレーしたすべてのプレーヤーのコレクションを返すため、データは確実に存在します...
効果的には、HistoryOfPlayer オブジェクトの複数のインスタンスを返す必要があります。すべて同じ 3 つのクラブの名前が含まれています (ID でリンクされている場合)。ちょっと頭に刺さる!!
誰か助けてくれませんか?