Как удалить дублирующиеся элементы из результатов запроса LINQ to Entities
В данном разделе приводится пример удаления повторяющихся элементов из результатов запроса с помощью ключевого слова Distinct.
Пример в этом разделе основан на модели Adventure Works Sales. Чтобы запустить код, используемый в данном разделе, нужно сначала добавить к проекту модель Adventure Works Sales и настроить его для использования платформы Entity Framework. Дополнительные сведения см. в разделе Как использовать мастер моделей EDM (Entity Framework) или Как вручную настроить проект Entity Framework и Как определить модель EDM вручную (Entity Framework).
Пример
Описание
В данном примере используется метод Distinct для возвращения неповторяющихся фамилий.
Код
Using context As New AdventureWorksEntities()
Dim contacts = context.Contacts
Dim contactsQuery = _
From c In contacts _
Select c.LastName
Dim distinctNames = contactsQuery.Distinct()
For Each name In distinctNames
Console.WriteLine("Name: " + name)
Next
End Using
using (AdventureWorksEntities context = new AdventureWorksEntities())
{
IQueryable<string> contactsQuery = from c in context.Contacts
select c.LastName;
IQueryable<string> distinctNames = contactsQuery.Distinct();
foreach (string name in distinctNames)
{
Console.WriteLine("Name: {0}", name);
}
}
См. также
Основные понятия
Выполнение запроса к концептуальной модели (платформа Entity Framework)