DateTime.MinValue 字段

定义

表示 DateTime 的最小可能值。 此字段为只读。

public: static initonly DateTime MinValue;
public static readonly DateTime MinValue;
 staticval mutable MinValue : DateTime
Public Shared ReadOnly MinValue As DateTime 

字段值

示例

下面的示例通过向其构造函数传递表示Int64一个时钟周期数的值来实例化DateTime对象。 在调用构造函数之前,该示例确保此值大于或等于 DateTime.MinValue.Ticks 且小于或等于 DateTime.MaxValue.Ticks。 否则,它将引发 ArgumentOutOfRangeException

// Attempt to assign an out-of-range value to a DateTime constructor.
long numberOfTicks = Int64.MaxValue;
DateTime validDate;

// Validate the value.
if (numberOfTicks >= DateTime.MinValue.Ticks &&
    numberOfTicks <= DateTime.MaxValue.Ticks)
   validDate = new DateTime(numberOfTicks);
else if (numberOfTicks < DateTime.MinValue.Ticks)
   Console.WriteLine("{0:N0} is less than {1:N0} ticks.",
                     numberOfTicks,
                     DateTime.MinValue.Ticks);
else
   Console.WriteLine("{0:N0} is greater than {1:N0} ticks.",
                     numberOfTicks,
                     DateTime.MaxValue.Ticks);
// The example displays the following output:
//   9,223,372,036,854,775,807 is greater than 3,155,378,975,999,999,999 ticks.
// Attempt to assign an out-of-range value to a DateTime constructor.
let numberOfTicks = Int64.MaxValue

// Validate the value.
if numberOfTicks >= DateTime.MinValue.Ticks &&
   numberOfTicks <= DateTime.MaxValue.Ticks then
    let validDate = DateTime numberOfTicks
    ()
elif numberOfTicks < DateTime.MinValue.Ticks then
    printfn $"{numberOfTicks:N0} is less than {DateTime.MinValue.Ticks:N0} ticks."
else
    printfn $"{numberOfTicks:N0} is greater than {DateTime.MaxValue.Ticks:N0} ticks."
// The example displays the following output:
//   9,223,372,036,854,775,807 is greater than 3,155,378,975,999,999,999 ticks.
' Attempt to assign an out-of-range value to a DateTime constructor.
Dim numberOfTicks As Long = Int64.MaxValue
Dim validDate As Date

' Validate the value.
If numberOfTicks >= Date.MinValue.Ticks And _
   numberOfTicks <= Date.MaxValue.Ticks Then
   validDate = New Date(numberOfTicks)
ElseIf numberOfTicks < Date.MinValue.Ticks Then
   Console.WriteLine("{0:N0} is less than {1:N0} ticks.", 
                     numberOfTicks, 
                     DateTime.MinValue.Ticks)      
Else                                                   
   Console.WriteLine("{0:N0} is greater than {1:N0} ticks.", 
                     numberOfTicks, 
                     DateTime.MaxValue.Ticks)     
End If
' The example displays the following output:
'   9,223,372,036,854,775,807 is greater than 3,155,378,975,999,999,999 ticks.

注解

此常量的值相当于公历中的 00:00:00.0000000 UTC,0001 年 1 月 1 日。

MinValue 定义分配给未初始化 DateTime 变量的日期和时间。 下面的示例对此进行了演示。

// Define an uninitialized date.
DateTime date1 = new DateTime();
Console.Write(date1);
if (date1.Equals(DateTime.MinValue))
   Console.WriteLine("  (Equals Date.MinValue)");
// The example displays the following output:
//    1/1/0001 12:00:00 AM  (Equals Date.MinValue)
// Define an uninitialized date.
let date1 = DateTime()
printf $"{date1}"
if date1.Equals DateTime.MinValue then
    printfn $"  (Equals Date.MinValue)"
// The example displays the following output:
//    1/1/0001 12:00:00 AM  (Equals Date.MinValue)
' Define an uninitialized date.
Dim date1 As Date
Console.Write(date1)
If date1.Equals(Date.MinValue) Then _
   Console.WriteLine("  (Equals Date.MinValue)")
' The example displays the following output:
'    1/1/0001 12:00:00 AM  (Equals Date.MinValue)

MinValueMaxValue 属性可用于确保值在将值传递给 DateTime 构造函数之前位于受支持的范围内。 示例部分中的代码说明了此用法。

适用于