Я какое-то время пытался сделать это. У меня есть этот список в asp.net, который я использую, который выглядит так:
<asp:ListBox ID="lstLinkedProspect" runat="server" SelectionMode="Multiple" />
Что я хочу с этим сделать, так это иметь возможность выбирать все элементы, которые у меня есть в определенной таблице, все, кроме того, который находится в списке. Не только выбранные, но и все элементы, которые уже есть в списке. Я использую библиотеку System.Linq.Dynamic. Вот что я пытаюсь сделать:
Dim lstProspect = dbConnection.Prospects.Where(If(String.IsNullOrWhiteSpace(SearchFilters.Value), "ProspectId > 0", SearchFilters.Value).ToString) _
.Except(' There goes all the items in the list box)
То, что я уже пробовал, это:
Dim lstProspect = dbConnection.Prospects.Where(If(String.IsNullOrWhiteSpace(SearchFilters.Value), "ProspectId > 0", SearchFilters.Value).ToString) _
.Except(lstLinkedProspect.Items.Cast(Of ListItem)().Where(Function(x) x.Value).Cast(Of Beans.Prospect))
Возможно ли в Linq получить все элементы из таблицы, которых нет в списке? Обратите внимание, что свойство Value элемента ListItem в списке — это ProspectId.
Заранее спасибо.
Except
? Смогли бы вы жить с обычным решением LINQ? И что это за тип LINQ? - person Gert Arnold   schedule 22.09.2013