我对下面的代码有一个小问题,'days'变量似乎总是为0,无论日子分开多远.
你能看到明显错误吗?
System.TimeSpan span = dates[0] - dates[1]; // e.g. 12/04/2010 11:44:08 and 18/05/2010 11:52:19
int days = (int)span.TotalDays;
if (days > 10) //days always seems to be 0
{
throw new Exception("Over 10 days");
}
Run Code Online (Sandbox Code Playgroud)
谢谢
当您从较早的日期减去较晚的日期时,根据您的评论,TotalDays将为负数.在您的示例中,-36.
因此比较(days > 10)会失败.你应该用
int days = Math.Abs((int)span.TotalDays);
Run Code Online (Sandbox Code Playgroud)
假设您没有将date [0]设置为等于date [1],则没有理由为TotalDays在您的注释中的样本日期返回零.
| 归档时间: |
|
| 查看次数: |
5936 次 |
| 最近记录: |