Question

I need to find difference between to sets. Classes ,comprising the sets, are different but have same type of fields. To be able to use Except method ,to take the difference, i want to map one list to another.

Can i do this using toList method? if not, Is it possible in another way?

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

Thanks

Was it helpful?

Solution

In LINQ, Select is synonymous with "map" in other languages. It is called "select" because the word comes from database terminology... but Select is what you want:

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

OTHER TIPS

If you want a projection you can use ye olde Select operator:

list1.Except(list2.Select(x => ConvertToClass1(x));
List<Class1>.Except(List<Class2>.Select(e => 
                                           new Class1() 
                                                    { 
                                                      Field1 = e.Field1 ...
                                                    });

However, I would advise you to use automapper.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top