1

タイプ のオブジェクトのリストがありますA。各オブジェクトにはNameプロパティがあります。同じ名前のオブジェクトと一致させるためにこれを使用したいプロパティBも持っているタイプのオブジェクトがあります。NameB.NameList<A>

List.Whereこれは、カスタム述語を使用して可能ですか?

4

3 に答える 3

5

はい、あなたの要求の微妙な点を見逃していない限り:

var filtered = listOfAs.Where(a => a.Name == b.Name);
于 2012-04-10T15:43:27.057 に答える
0

もちろん:

myListOfAs.Where(a=>a.Name == myB.Name);

これは、特定の B インスタンス myB と同じ名前を持つ myListOfAs の 0 個以上の要素の IEnumerable を返します。

Join() を使用して、2 番目のリスト内の複数の B を As のリストから一致する名前を持つ要素と一致させることもできますが、それはあなたがしようとしていることのようには聞こえません。

于 2012-04-10T15:44:20.003 に答える
0

あなたが何を求めているのか理解できれば、参加したいだけだと思います。これは、クエリ構文で行うのが最も簡単です。

var results = from a in ListA
              join b in ListB on a.Name equals b.Name
              select { whatever you need from a and b };
于 2012-04-10T15:44:48.697 に答える