У меня есть ReactiveList<Monitor> Monitors
и IEnumerable<Monitor> newMonitors
. Внутри монитора имеется уникальная SN определяется:Как слить IEnumerable в ReactiveList и удалить дублированные элементы?
public class Monitor
{
public string SN {get;set;}//unique
}
ReactiveList<Monitor> Monitors
IEnumerable<Monitor> newMonitors
Теперь я хочу, чтобы объединить newMonitors
в Monitors
и удалить дублированные детали SN
.
Я пытаюсь использовать метод, предоставленный ReactiveList
, а не общая LINQ, потому что я хочу сохранить уведомление о ReactiveList
и его DerivedCollection
, которые используются в моем переплете.
Мое текущее решение, чтобы проверить, если элементы уже существует и добавить его один на один, как
foreach (var m in newMonitors)
{
if(Monitors.Contains(m))//to override the comparison operators here
continue;
else
Monitors.Add(m);
}
Я думаю, что производительность будет низкой, когда счетчик newMonitors могли быть тысячи.
Любой другой элегантный способ сделать это?
Fei