Suppose the date of your statement does not matter DateTime.MinValue :
DateTime previousDate = DateTime.MinValue; DateTime currentDate = new DateTime(); foreach (ApproverVo approver in approvers) { if (previousDate != DateTime.MinValue) { currentDate = (DateTime)approver.ApprovalDate; totalTimeSpan += (currentDate - previousDate).TotalDays; previousDate = currentDate; } else previousDate = (DateTime)approver.ApprovalDate; }
UPDATE
According to @mdmullinax answers, the code above is similar:
DateTime previousDate = new DateTime(); DateTime currentDate = new DateTime(); foreach (ApproverVo approver in approvers) { if (previousDate != new DateTime()) { currentDate = (DateTime)approver.ApprovalDate; totalTimeSpan += (currentDate - previousDate).TotalDays; previousDate = currentDate; } else previousDate = (DateTime)approver.ApprovalDate; }
source share