我不能使用日期时间减法
I can't use datetime subtract method
我无法使用以下日期时间减法。
https://msdn.microsoft.com/ja-jp/library/system.datetime.subtract(v=vs.110).aspx
我使用 Microsoft Visual Studio Proffesional 2013 和 VisualBasic2013 以及 .NetFrameWork 版本 4.5.50938
我想用上面的方法。我可以使用这样的添加方法:
Dim dt As Datetime = Nothing
dt.Add(New TimeSpan(1))
我想知道为什么有主页是Datetime。
减法,我不会用减法……
让我们看看当您尝试将 DateTime 创建为 Nothing 时会发生什么:
Dim dt As DateTime = Nothing
Console.WriteLine(dt.ToString("yyyy-MM-dd HH:mm:ss.fffffff"))
我们得到“0001-01-01 00:00:00.0000000”。这是可以用 DateTime 表示的最早日期时间。它不能包含 Nothing
的 "value",因为它是值类型:Why is null not allowed for DateTime in C#?.
让我们尝试添加 1 个刻度:
dt.Add(New TimeSpan(1))
Console.WriteLine(dt.ToString("yyyy-MM-dd HH:mm:ss.fffffff"))
哦!我们再次得到“0001-01-01 00:00:00.0000000”。没有添加勾号。那是因为 Add
方法 returns 一个新的 DateTime - 它不影响调用 Add
的那个。
我们再试一次:
dt = dt.Add(New TimeSpan(1))
Console.WriteLine(dt.ToString("yyyy-MM-dd HH:mm:ss.fffffff"))
现在我们按预期得到“0001-01-01 00:00:00.0000001”。
如果我们尝试早于第一个允许的日期时间会发生什么?
Dim dt As DateTime = Nothing
dt = dt.Subtract(New TimeSpan(1))
它抛出一个System.ArgumentOutOfRangeException。
我无法使用以下日期时间减法。
https://msdn.microsoft.com/ja-jp/library/system.datetime.subtract(v=vs.110).aspx
我使用 Microsoft Visual Studio Proffesional 2013 和 VisualBasic2013 以及 .NetFrameWork 版本 4.5.50938
我想用上面的方法。我可以使用这样的添加方法:
Dim dt As Datetime = Nothing
dt.Add(New TimeSpan(1))
我想知道为什么有主页是Datetime。 减法,我不会用减法……
让我们看看当您尝试将 DateTime 创建为 Nothing 时会发生什么:
Dim dt As DateTime = Nothing
Console.WriteLine(dt.ToString("yyyy-MM-dd HH:mm:ss.fffffff"))
我们得到“0001-01-01 00:00:00.0000000”。这是可以用 DateTime 表示的最早日期时间。它不能包含 Nothing
的 "value",因为它是值类型:Why is null not allowed for DateTime in C#?.
让我们尝试添加 1 个刻度:
dt.Add(New TimeSpan(1))
Console.WriteLine(dt.ToString("yyyy-MM-dd HH:mm:ss.fffffff"))
哦!我们再次得到“0001-01-01 00:00:00.0000000”。没有添加勾号。那是因为 Add
方法 returns 一个新的 DateTime - 它不影响调用 Add
的那个。
我们再试一次:
dt = dt.Add(New TimeSpan(1))
Console.WriteLine(dt.ToString("yyyy-MM-dd HH:mm:ss.fffffff"))
现在我们按预期得到“0001-01-01 00:00:00.0000001”。
如果我们尝试早于第一个允许的日期时间会发生什么?
Dim dt As DateTime = Nothing
dt = dt.Subtract(New TimeSpan(1))
它抛出一个System.ArgumentOutOfRangeException。