を使用して2つのリストの間で共通の要素を見つける:私は2つのリストを以下しているラムダ式
var firstList = new List<ProgramInfo>()
{
new ProgramInfo {Name = "A", ProgramId = 1, Description = "some text1"},
new ProgramInfo {Name = "C", ProgramId = 2, Description = "some text2"},
new ProgramInfo {Name = "D", ProgramId = 3, Description = "some text3"},
new ProgramInfo {Name = "E", ProgramId = 4, Description = "some text4"}
};
var secondList = new List<ProgramInfo>()
{
new ProgramInfo {Name = "C", ProgramId = 2, Description = "some text1"},
new ProgramInfo {Name = "D", ProgramId = 3, Description = "some text2"},
};
を、この2つのリストは、実行時に生成され、私はこのリストの両方からプログラムIDに応じて、共通のProgramInfoを選択する必要があります
例えば、上記の例の場合、出力は
var thirdList = new List<ProgramInfo>()
{
new ProgramInfo {Name = "C", ProgramId = 2, Description = "some text1"},
new ProgramInfo {Name = "D", ProgramId = 3, Description = "some text2"},
};
public class ProgramInfo
{
public string Name { get; set; }
public int ProgramId { get; set; }
public string Description { get; set; }
}
する必要があります誰かが、私はラムダ式を使用してこれを行うことができますどのように私をお勧めすることはできますか?
それはタイプミスではなくわからないかもしれません:それはあなたのクラスを動作させるためには、あなたはまた、代わりの機能をオーバーライドする
IEqualityComparer
を指定することができEquals
とGetHashCode
を上書きする必要があります'secondList'と' thirdList'は上記リストのように '' text2''と '' text3''を意味しましたか? –
私はここで多くの研究努力を見ているか分かりません... –