private void IncrementHourlyCounter() { DateTime now = DateTime.UtcNow; DateTime ts = new DateTime(now.Year, now.Month, now.Day, now.Hour, 0, 0); CounterHourly cntr = (CounterHourly)Session.CreateCriteria(typeof(CounterHourly)) .Add(Expression.Eq("Timestamp", ts)) .UniqueResult(); if (cntr == null) { cntr = new CounterHourly(); cntr.Timestamp = ts; cntr.Total = 0; } cntr.Total++; Session.Save(cntr); }
public List <TransitSummarizedCounter> GetSummaryHourly() { List <TransitSummarizedCounter> result = new List <TransitSummarizedCounter>(); DateTime now = DateTime.UtcNow; DateTime ts = now.AddHours(-24); while (ts <= now) { DateTime ts_current = new DateTime(ts.Year, ts.Month, ts.Day, ts.Hour, 0, 0); CounterHourly c = (CounterHourly)Session.CreateCriteria(typeof(CounterHourly)) .Add(Expression.Eq("Timestamp", ts_current)) .UniqueResult(); result.Add((c == null) ? new TransitSummarizedCounter(ts_current, 0) : new TransitSummarizedCounter(c.Timestamp, c.Total)); ts = ts.AddHours(1); } return(result); }