как добавить элемент по умолчанию в последовательности, если он пуст?используя DefaultIfEmpty () - PullRequest
0 голосов
/ 12 июля 2010

У меня есть запрос, который, возможно, не имеет никакого элемента в последовательности, и я хочу добавить один элемент в последовательность, если он пуст.

var results = _context.Documents.Select(document => document.MimeType).Distinct().ToList().DefaultIfEmpty("There is nothing to be used as MimeType");

, но последовательность все еще пуста, однако используется метод DefaultIfEmpty.

1 Ответ

1 голос
/ 17 сентября 2010

Да, вы можете использовать DefaultIfEmpty() для этой цели.(Однако учтите, что ToList() в вашем запросе является избыточным.)

Например:

string[] s1 = new string[] { };
string[] s2 = new string[] { "abc" };

// Outputs "DEFAULT" because the sequence s1 is empty.
foreach (var s in s1.DefaultIfEmpty("DEFAULT"))
    Console.WriteLine(s);

// Outputs "abc" from the sequence s2 and nothing else.
foreach (var s in s2.DefaultIfEmpty("DEFAULT"))
    Console.WriteLine(s);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...