Establecer null en DateTime en C#

Haider Ali 12 octubre 2023
  1. Comprender los conceptos básicos de DateTime en C#
  2. Asignación de valores máximos y mínimos a un DateTime en C#
  3. Asignación de valor null a DateTime en C#
Establecer null en DateTime en C#

Veremos cómo establecer un valor null para DateTime en esta lección. Para comprender completamente este concepto, debemos estar familiarizados con los fundamentos de DateTime y los valores anulables.

Comprender los conceptos básicos de DateTime en C#

Supongamos que un usuario quiere iniciar el reloj desde el inicio del día 25 de diciembre de 2015. Asignaremos valores al objeto DateTime.

Fragmento de código:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace nulldatetime {
  class Program {
    static void Main(string[] args) {
      DateTime date1 = new DateTime(2015, 12, 25);  // Assgining User Defined Time ;
      Console.WriteLine("Time " + date1);
      Console.ReadKey();
    }
  }
}

Producción :

Time 12/25/2015 12:00:00 AM

Asignación de valores máximos y mínimos a un DateTime en C#

Asignar un valor mínimo a un DateTime iniciaría el tiempo desde el principio Min Time: 1/1/0001 12:00:00 AM. Lo mismo ocurre con el tiempo máximo, y comenzaría el tiempo con el valor máximo de tiempo Max Time: 12/31/9999 11:59:59 PM.

Fragmento de código:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace nulldatetime {
  class Program {
    static void Main(string[] args) {
      // How to Define an uninitialized date. ?
      // First Method to use MinValue field of datetime object
      DateTime date2 = DateTime.MinValue;  // minimum date value
      Console.WriteLine("Time: " + date2);
      // OR
      date2 = DateTime.MaxValue;
      Console.WriteLine("Max Time: " + date2);
      Console.ReadKey();
    }
  }
}

Producción :

Min Time: 1/1/0001 12:00:00 AM
Max Time: 12/31/9999 11:59:59 PM

Asignación de valor null a DateTime en C#

El DateTime no admite valores NULL porque, de forma predeterminada, es un tipo de valor. El tipo de valor es una forma de datos almacenados en su asignación de memoria.

Por otro lado, si usáramos el Nullable DateTime. Podemos asignarle un valor null.

Fragmento de código:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace nulldatetime {
  class Program {
    static void Main(string[] args) {
      // By default DateTime is not nullable because it is a Value Type;
      // Problem # Assgin Null value to datetime instead of MAX OR MIN Value.
      //  Using Nullable Type
      Nullable<DateTime> nulldatetime;  // variable declaration
      nulldatetime = DateTime.Now;      // Assgining DateTime to Nullable Object.
      Console.WriteLine("Current Date Is " + nulldatetime);  // printing Date..
      nulldatetime = null;                                   // assgining null to datetime object.
      Console.WriteLine("My Value is  null ::" + nulldatetime);
      Console.ReadKey();
    }
  }
}

Producción :

Current Date Is 02/11/2022 18:57:33
My Value is  null ::
Autor: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn

Artículo relacionado - Csharp DateTime