避免模型空数据foreach语句
问题描述:
我有这个循环至极从我的模型1比较数据:避免模型空数据foreach语句
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);
}
但是我在我的record.Data第一场空场,所以我的foreach给我一个“System.ArgumentOutOfRangeException”
如何避免在我的“数据”领域,其名单和第一空表数据为空
我可以显示LINQ的代码,如果它有助于
编辑****************************
解决 解决了我的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);
}
}
答
更新:有关数据类型的更多信息将是有益的.. 试试这个:
这个怎么样?
foreach (var record in model_pdv.Where(r => r.Data != null))
{
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);
}
这部分显示错误,我的“R?。数据”无效:( –
还是同样的问题,因为它的数据有一个空值至极我想避免 –
我还是不明白它做好。问题是,这个foreach没有空数据的问题,空数据是一个没有item的数组,列表中没有任何项,但是不为null,null不为空,null不存在...现在索引可以不存在范围,但不是foreach ... – ipavlu