我想利用for在DateTime这样的:
for (DateTime d = _BookedCheckIn; d <= _BookedCheckOut; d.AddDays(1))
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
但问题是d不会增加.有谁知道问题是什么?
Ree*_*sey 21
你需要使用:
for (DateTime d = _BookedCheckIn; d <= _BookedCheckOut; d = d.AddDays(1))
{
Run Code Online (Sandbox Code Playgroud)
当你打电话时d.AddDays,它会返回一个新的 DateTime,而不是改变你已经创建的那个.
d.AddDays(1)实际上并没有给d添加一天.它返回一个比d大1天的新日期时间对象.
此问题已在此处记录:https: //stackoverflow.com/questions/380819/common-programming-mistakes-for-net-developers-to-avoid/1213588#1213588