martes, 5 de mayo de 2015

Declarar Fechas como tipo constante

Buenos días.

Algunas veces para no "quemar" valores dentro del código nombramos variables constantes las cuales usaremos en esos casos, así podríamos prevenir un cambio a futuro de la constante sin contar que se ve mejor presentado el código.

Normalmente en c# declaramos constantes de la siguiente forma:

public const int variable = 02;

Normalmente pensaríamos que para fechas debería quedar de la siguiente forma:

public const datetime fecha = "01/01/15"; 

o también:

const datetime fecha = Convert.ToDateTime("01/05/2015");

Pero nos encontramos que en ambos casos devuelve error, para solucionar esto se debe usar "static readonly" ya que c# no permite fechas constantes pero que en ultimas vendría siendo el mismo comportamiento, la forma correcta seria :

public static readonly DateTime fecha =  new DateTie (01,05,2015);

Para pruebas de concepto pueden usar la fecha actual:

static readonly DateTime fecha =  DateTime.Now();


Fuentes:

http://bstruthers.com/weblog/2013/02/15/C_SHARP_DateTime_Constant/
http://techblogs.xyz/2008/07/01/constansts-in-cs-const-vs-readonly/
http://stackoverflow.com/questions/15063431/why-it-is-not-allowed-to-create-datetime-constant-in-net

No hay comentarios:

Publicar un comentario