¿Cómo convertir fecha y hora? hasta fechahora
Quiero convertir un DateTime ( DateTime?
) que acepta valores NULL en DateTime
, pero aparece un error:
¿No se puede convertir implícitamente el tipo 'System.DateTime?' a 'System.DateTime'. Existe una conversión explícita (¿te falta una conversión?)
He intentado lo siguiente:
DateTime UpdatedTime = (DateTime)_objHotelPackageOrder.UpdatedDate == null
? DateTime.Now : _objHotelPackageOrder.UpdatedDate;
Aceptado
Desea utilizar el operador de fusión nula , que está diseñado exactamente para este propósito.
Al usarlo, terminas con este código.
DateTime UpdatedTime = _objHotelPackageOrder.UpdatedDate ?? DateTime.Now;
MS ya creó un método para esto, por lo que no es necesario utilizar el operador coalescente nulo. No hay diferencia en la funcionalidad, pero es más fácil para los no expertos entender lo que está sucediendo de un vistazo.
DateTime updatedTime = _objHotelPackageOrder.UpdatedDate.GetValueOrDefault(DateTime.Now);
Prueba esto
DateTime UpdatedTime = _objHotelPackageOrder.UpdatedDate ?? DateTime.Now;