7

セット間の違いを見つける必要があります。セットを含むクラスは異なりますが、同じタイプのフィールドがあります。Exceptメソッドを使用できるようにするために、違いを利用するために、あるリストを別のリストにマップしたいと思います。

toListメソッドを使用してこれを行うことはできますか?そうでない場合、それは別の方法で可能ですか?

List<Class1>.Except(List<Class2> I need to map class2 list to class1 list)

ありがとう

4

3 に答える 3

15

LINQでは、Selectは他の言語の「マップ」と同義です。単語がデータベース用語から来ているので、それは「選択」と呼ばれます...しかし、選択はあなたが望むものです:

var mappedTypes = myCollection.Select(item => new MappedType(item.Something));

于 2010-12-26T14:58:26.520 に答える
1

投影が必要な場合は、古いSelect演算子を使用できます。

list1.Except(list2.Select(x => ConvertToClass1(x));
于 2010-12-26T14:52:09.167 に答える
0
List<Class1>.Except(List<Class2>.Select(e => 
                                           new Class1() 
                                                    { 
                                                      Field1 = e.Field1 ...
                                                    });

ただし、automapperを使用することをお勧めします。

于 2010-12-26T14:53:01.263 に答える