Разрешить добавление нулевых значений в список - PullRequest
3 голосов
/ 21 декабря 2011

Я удалил все ненужные переменные и попытался сосредоточиться непосредственно на проблеме.У меня есть переменная, которая может возвращать нулевые значения:

var ppl = from p in xyz.new_ppl
          select new
          {
              p.name
          };

Я запрашиваю ее и добавляю в список:

foreach (var peeps in ppl)
{
    peopleList.Add(peeps.name);
    peopleNames = peopleList;
}

Это работает, когда я добавляю предложение where для проверки передоператор SELECT, чтобы проверить наличие нулевых значений, используя этот оператор

where p.name != null

Что я хочу сделать, это разрешить добавление нулевых значений.поэтому я попробовал firstordefault, но это не сработало

name = p.name.FirstorDefault()

ошибка говорит о том, что я не могу привести символ к строке.peopleNames - это метод установки, метод получения типа string.Любое решение или решение?

Ответы [ 3 ]

2 голосов
/ 21 декабря 2011
from p in xyz.new_ppl
select p.name;
0 голосов
/ 26 декабря 2011

Когда вы делаете p.name.FirstorDefault(), это означает, что вы пытаетесь получить первый символ строки p.name.Так что ошибка компилятора верна (хотя я понятия не имею, почему он не может неявно преобразовать символ в строку - но это уже другая история :))

Но если вы хотите, чтобы также были добавлены значения NULL, почему бы просто не удалитьwhere p.name != null

0 голосов
/ 21 декабря 2011

Вы хотели бы попробовать это так?

var ppl = from p in xyz.new_ppl
          select new
          {
              p == null ? null : p.name
          };
...