В следующем запросе linq у меня есть деление на ноль исключение, с которым я не могу показаться кодом. Это происходит, когда сумма fldDevider возвращает 0.Как обрабатывать деление на ноль в Linq
Dim lstToReturn As List(Of MonthData)
lstToReturn = (
From myRow In dtSpotData.AsEnumerable()
Group myRow By myRow.Field(Of DateTime)(fldstartdate).Month Into Group
Select New MonthData() With {
.Month = Month,
.ValuePerMonth =
(
Group.Sum(Function(dr) dr.Field(Of [Decimal])(fldSomeGeneralValue))/
(
Group.Sum(Function(dr) CDec(dr.Field(Of String)(fldDevider)))
)
)
}
).ToList()
Как я могу сделать, что в поле ValuePerMonth является 0, когда Group.Sum (функция (д-р) CDec (dr.Field (Of String) (fldDevider))) возвращает 0. Или как мне вернуть 1 для Sum fldDevider, если это фактически 0.
Некоторые советы о том, как лучше преобразовывать строку из строки в десятичную, тоже приветствуются.
Спасибо много, это действительно сложный вопрос, который можно найти в документации и примерах Linq. – CodingBarfield