Ich habe eine ReactiveList<Monitor> Monitors
, und eine IEnumerable<Monitor> newMonitors
. Im Inneren des Monitors, ist es ein einzigartiges SN definiert:Wie füge ich einen IEnumerable in eine ReactiveList ein und entferne die doppelten Einträge?
public class Monitor
{
public string SN {get;set;}//unique
}
ReactiveList<Monitor> Monitors
IEnumerable<Monitor> newMonitors
Jetzt möchte ich die newMonitors
in Monitors
verschmelzen und die duplizierten Artikel von SN
entfernen.
Ich versuche, das Verfahren durch ReactiveList
anstatt allgemeine LINQ zu nutzen, weil ich die Benachrichtigung von ReactiveList
und seinen DerivedCollection
behalten will, die in meiner Bindung verwendet werden.
Meine aktuelle Lösung ist, wenn die Elemente bereits überprüfen existiert, und fügen Sie eins nach dem anderen, wie
foreach (var m in newMonitors)
{
if(Monitors.Contains(m))//to override the comparison operators here
continue;
else
Monitors.Add(m);
}
ich denke, die Leistung niedrig sein wird, wenn newMonitors gräflichen Tausende sein könnte.
Jeder andere elegante Weg, dies zu tun?
Fei