Как сравнить два значения списка и получить разницу в каждом свойстве?
Мне нужно сравнить два значения списка (GroupName,FieldName,Sequence) и получить разницу & одинаковые значения в списке...
Я попробовал некоторые linq C#, но не получил правильных данных.
CompareTwoList | онлайн-компилятор C# | .NET Fiddle[^]
плз помогите
Что я уже пробовал:
var Matches = lstS.Where(y => lstT.Any(z => z.GroupName == y.GroupName)).ToList(); var MatchesBoth = lstS.Where(y => lstT.Any(z => z.GroupName == y.GroupName && z.FieldName == y.FieldName)).ToList(); var SourceDiffer = lstS.Where(x => !lstT.Any(z => z.GroupName == x.GroupName && z.FieldName == x.FieldName)).ToList(); var TargetDiffer = lstT.Where(x => !lstS.Any(z => z.GroupName == x.GroupName && z.FieldName == x.FieldName)).ToList();
Maciej Los
Какого результата вы ожидаете?
venkatesh (chennai)
Источник G1 A 1 IsDiffer
Цель G1 A 2 IsDiffer
Источник G1 B 2 IsDiffer
Цель G1 B 3 IsDiffer
Источник - - - IsDiffer
Цель G1 C 1 IsDiffer
Источник G2 C 1 IsDiffer
Цель - - - IsDiffer
Источник G3 D 1 IsDiffer
Цель - - - IsDiffer
Источник G3 E 1 IsDiffer
Цель - - - IsDiffer
Источник G2 D 1 IsDiffer
Цель - - - IsDiffer
Источник - - - IsDiffer
Цель G2 E 2 IsDiffer
Источник G4 E 2 Совпадение
Цель G4 E 2 Совпадение