无法表示的DateTime

use*_*862 18 c# datetime

我有一个方法,它需要两个日期时间参数

public  void SomeReport(DateTime TimeFrom, DateTime TimeTo)
{
    // ommited 
    TimeFrom.ToString("ddMMyy"), TimeTo.ToString("ddMMyy")));
    // ommited
}
Run Code Online (Sandbox Code Playgroud)

当我发送这个参数时

 DateTime TimeTo = DateTime.Now;
 DateTime TimeFrom = new DateTime().AddHours(-1);
Run Code Online (Sandbox Code Playgroud)

发生此错误:

System.ArgumentOutOfRangeException:添加或减去的值导致无法表示的DateTime.

可能是什么问题?

Ode*_*ded 35

new DateTime()01/01/0001 00:00:00这也是DateTime.MinValue.

你要减去一小时.

猜猜你试图从TimeTo价值中减去一小时:

var TimeFrom = TimeTo.AddHours(-1);
Run Code Online (Sandbox Code Playgroud)


Raw*_*ing 13

new DateTime()返回最小可表示DateTime; 增加-1小时数导致DateTime无法表示.

你可能想要 DateTime TimeFrom = TimeTo.AddHours(-1);


The*_*Kid 5

尝试:

DateTime TimeTo = DateTime.Now;
DateTime TimeFrom = TimeTo.AddHours(-1);
Run Code Online (Sandbox Code Playgroud)