for (int i = 1; i < 31; i++)
{
var getData = "SELECT * FROM Test WHERE date = '" + inputDate + "'";
sumKG = 0;
foreach (var c in db.Query(getData))
{
var total = c.kg * c.rep * c.sett;
DateTime thisDay = c.date;
nextDay = thisDay.AddDays(1);
inputDate = nextDay.ToString("yyyy-MM-dd");
sumKG += total;
}
@sumKG <br />
}
Так это вычисление для каждой строки в базе данных с теми же датами, хранящихся в нем, когда цикл Еогеаспа делаются с расчетом он прыгает обратно в цикл и inputDate
будет на следующий день из-за addDays(1)
, однако, если есть дата, которая ничего не соответствует в базе данных, она ничего не делает, я хочу, чтобы он снова добавил один день к inputDate
и продолжал на следующий день каждый раз, когда нет матч до for
петля делается!сделать прогон цикла Foreach пока она находит результаты
Потому что точка for loop
в этом случае должна проверять данные в течение одного месяца, а когда один день равен нулю, он просто останавливается, как я могу это решить? Это имело какой-то смысл?
Почему этого расчета в C# на каждый день, вместо того, чтобы использовать SQL для расчета это все в первую очередь? Если вы добавите структуру своей таблицы, некоторые примеры данных и желаемый результат, мы, вероятно, можем помочь вам создать единый оператор sql, который будет рассчитать все это для вас. –
Вы должны попытаться сохранить эту логику отдельно от viewmodel. Выполняйте все ваши вычисления в контроллере и представляйте результаты в режиме просмотра. – Nikola
@ ZoharPeled Я не думал об этом ха-ха, но я исправил это сейчас! Я действительно знал, как это сделать! –