ПРИМЕЧАНИЕ. Прежде чем вы прочитаете или дадите ответ, я знаю о Enumerable.Distinct
, я спрашиваю о конкретной поддержке языка для этого метода, а не о самом методе.
Я всегда задавался вопросом, почему нет ключевого слова distinct
в наборе ключевых слов С# LINQ, чтобы я мог писать:
var items = distinct from x in y
select x;
или
var items = from x in y
select distinct x;
Кто-нибудь знает, почему это не было включено или почему было бы неплохо включить его? Мне просто кажется громоздким, что я должен обернуть запрос только для вызова Distinct()
; ключевое слово distinct
будет более естественным.
ПРИМЕЧАНИЕ. Я знаю, что метод distinct
имеет переопределения для предоставления сопоставителя, если это необходимо, но ключевое слово, использующее сопоставитель по умолчанию, было бы замечательным. Я даже мог представить себе комбинацию ключевых слов distinct by
, чтобы оператор сравнения мог быть предоставлен встроенным в запрос.