Этот linq:
list.AddRange(from modelState in context.ModelState.Values
from error in modelState.Errors
select error.Exception.ToString());
работает если есть error.Exception. Однако, если error.Exception - это null, он выдает ошибку null ref. Как мне изменить это, чтобы проверить на нуль?
Просто отфильтруйте.





Добавьте предложение Where:
from modelState in context.ModelState.Values
from error in modelState.Errors
where error.Exception != null
select error.Exception.ToString()
И, возможно, вы найдете использование SelectMany немного более читаемым:
from m in context.ModelState.Values.SelectMany(v => v.Errors)
where m.Exception != null
select m.Exception.ToString()
Если вам нужны элементы null, где значение error.Exception равно нулю, используйте оператор ?.:
context.ModelState.Values.SelectMany(v => v.Errors.Select(e => e.Exception?.ToString())
Когда у вас есть нули, что вы хотите с этим делать? Отфильтровать? Или просто взять вместо этого предметы
null?