2009-06-28 2 views
0

мне интересно, если есть способ сделать это в привязываемому LINQ:BindableLinq коллекция вложенности

var LeftItems = AllItems.Where(p => !RightItems.Contains(p))); 

Я попытался либеральное использование AsBindable(), но она не работает для меня ..

var LeftItems = AllItems.AsBindable().Where(p => !RightItems.AsBindable.Contains(p))); 

Если это не поддерживается в BindableLINQ, есть умная работа вокруг я не вижу, или есть другой аналогичный пакет, который не поддерживает его?

ответ

0

Метод .Where() - это последний, который запускается, поэтому тип результата метода расширения Where() - это тип leftItems. Если вы хотите получить результат в качестве связующего, я думаю, вам просто нужно:

var leftItems = AllItems.Where(p => !RightItems.Contains(p)).AsBindable(); 
0

Я думаю, что вы ищете метод Except.

var LeftItems = AllItems.Except(RightItems); 

Не уверен, что это реализовано в bindable linq.

В противном случае вы должны попробовать Obtics.

Смежные вопросы