Много читая об операторе распространения Null ?.
, я не нашел ответа, полезен ли он в следующем сценарий.
Код, который выдает:
int[] values = null;
foreach ( var i in values ) // Throws since values is null.
{
// ...
}
Чтобы это работало, я должен добавить проверку null
перед доступом к переменной values
.
Скорее всего, приведенный выше код выходит за рамки проектных соображений для оператора распространения Null. И все же, чтобы быть уверенным, я должен спросить.
Мой вопрос:
Полезен ли оператор распространения Null при попытке доступа к null
коллекциям в цикле foreach
?
foreach ( var i in values ?? Enumerable.Empty<int>())
, чтобы избежать вложенности. - person Sriram Sakthivel   schedule 30.12.2014