Estaba leyendo este artículo de MSDocs sobre la compatibilidad con el formato relacionado con DateTime https://docs.microsoft.com/en-us/dotnet/standard/datetime/system-text-json-support#support-for-the-iso-8601- formato 12019
Y estaba tratando de convertir la fecha y la hora en una cadena con este formato sin dos puntos en la parte de la zona horaria :
2021-01-01T14:30:10+0030
Quiero convertir este datetimeoffset en una cadena. Yo uso este formato:
aaaa-MM-ddTHH:mm:sszzz
Pero la salida del método ToString("yyyy-MM-ddTHH:mm:sszzz") es:
2021-01-01T14:30:10+00:30
Tiene un signo de dos puntos (:) en la parte de la zona horaria. ¿Cómo puedo transmitirlo como '2021-01-01T14:30:10+0030'? (sin dos puntos en la zona horaria)
¿Puedo formatear la parte de la zona horaria?
Parece que no es posible (al menos en .Net 6) obtener una cadena de formato para que DateTimeOffset obtenga la representación requerida. Sin embargo, puede intentar combinar dos formatos: date (que es de tipo DateTimeOffset ) e ints Offset (de tipo TimeSpan )
string result = $"{date:yyyy-MM-ddTHH:mm:sszz}{date.Offset:mm}";Aquí combinamos
date:date:yyyy-MM-ddTHH:mm:sszz - date con Offset hasta horasdate.Offset:mm - Minutos de Offset