public string PropertyFromComparer(FormatComparer comparer) { switch (comparer) { case FormatComparer.Base: return(Base); case FormatComparer.Name: return(Name); case FormatComparer.NoSpace: return(NoSpace); case FormatComparer.LowerCase: return(LowerCase); case FormatComparer.LowerCaseWords: return(LowerCaseWords); case FormatComparer.LowerCaseNoSpace: return(LowerCaseNoSpace); case FormatComparer.Abbreviation: return(Abbreviation); default: return(string.Empty); } }
public static bool Compare(this List <Format> format1, List <Format> format2, FormatComparer comparerFirst, FormatComparer comparerSecond) => format1.Any(f1 => format2.Any(f2 => f1.PropertyFromComparer(comparerFirst) == f2.PropertyFromComparer(comparerSecond)));