for循环中的AddDays()

时间:2014-11-13 15:33:02

标签: c# datetime for-loop

我想在for循环中使用AddDays()方法。但它不起作用。尽管在循环中使用,但日值并未增加。然后它正在改变无限循环。例如;

DateTime exDt = tempPermissionWarning[i].planned_start_date;
for (DateTime dt = exDt; dt <= newTo; dt.AddDays(1))
{
    context = context + dt.ToShortDateString() + "æ" + tempPermissionWarning[i].resource_name) + ¨";
}

我如何在for循环中使用AddDays()方法

非常感谢

2 个答案:

答案 0 :(得分:15)

dt.AddDays(1)会返回一个您要丢弃的新对象。

您可以在dt = dt.AddDays(1)循环中使用for代替您当前拥有的内容。

答案 1 :(得分:3)

AddDays方法返回一个新的DateTime,因此您的dt对象永远不会被修改。但是你可以重新分配它。这应该有效:

for (DateTime dt = exDt; dt <= newTo; dt = dt.AddDays(1)) { ... }