# DateTime.MinValue フィールド

## 定義

DateTime の最小有効値を表します。 このフィールドは読み取り専用です。

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

## 例

// 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)


MinValueプロパティと MaxValue プロパティを使用すると、値がコンストラクターに渡されるDateTime前に、サポートされている範囲内にあることを確認できます。 「例」セクションのコードは、この使用方法を示しています。