Избегайте пустых данных из модели в операторе ForeachC#

Место общения программистов C#
Ответить
Anonymous
 Избегайте пустых данных из модели в операторе Foreach

Сообщение Anonymous »

У меня есть цикл, который сравнивает данные одной из моих моделей:
foreach (var record in model_pdv)
{
foreach (var dish in record.Data)
{
int index = dish.Fecha.Day;
record.Days[index] = dish.Cantidad;
record.TotalQuantity += dish.Cantidad;
}
record.TotalPrice = (record.TotalQuantity * record.Precio);
}

Однако мое первое поле в моей записи. Данные — пустое поле, поэтому мой foreach выдает мне «System.ArgumentOutOfRangeException»
Как я могу избежать пустые данные в моем поле «Данные», это список, и первый список пуст.
Я могу показать код LinQ, если это поможет.
РЕДАКТИРОВАТЬ
Проблема решена путем добавления оператора if в цикл foreach
foreach (var record in model_pdv)
{
if (!record.Data.Any()){
foreach (var dish in record.Data)
{
int index = dish.Fecha.Day;
record.Days[index] = dish.Cantidad;
record.TotalQuantity += dish.Cantidad;
}
record.TotalPrice = (record.TotalQuantity * record.Precio);
}
}


Подробнее здесь: https://stackoverflow.com/questions/405 ... -statement
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»