Ich habe 2 Sammlungen, eine der verfügbaren Funktionen und eine der Benutzerfunktionen. Ich möchte ein Element in den verfügbaren Features löschen, die den Feature-Code in der anderen Sammlung enthalten, aber die richtige Syntax nicht finden.Vergleichen zweier Sammlungen von Objekten
Ich habe meinen aktuellen Code enthält das nicht, kompiliert (es beschwert, dass ich nicht den „==“ Operator verwenden kann, mein Linq Wissen ist minimal)
Ist Linq der beste Weg, dies zu tun ? Jede Hilfe wäre willkommen.
AvailableFeatureViewListClass availableFeatures = (AvailableFeatureViewListClass)uxAvailableList.ItemsSource;
UserFeatureListClass userFeatures = (UserFeatureListClass)uxUserFeatureList.ItemsSource;
foreach (UserFeatureClass feature in userFeatures)
{
availableFeatures.Remove(availableFeatures.First(FeatureCode => FeatureCode == feature.FeatureCode));
}
Ich versuchte den zweiten Vorschlag und es beschwert sich, dass der "x" -Teil nicht abgeleitet werden kann. Klingt wie es sollte funktionieren, aber die Linq wirft mich gerade jetzt. –
@Mark: Können Sie uns sagen, was die 'AvailableFeatureViewListClass' oder' UserFeatureListClass' Typen sind? Warum benutzen Sie nicht einfach nur generische Typen? –
Danke Mehrdad, sie sind eigentlich beide BusinessObjects, aber die Elemente in der Objektsammlung teilen Eigenschaften (in diesem Fall FeatureCode) –