¿Cómo se formatea el tiempo en una API de ASP.NET Core?
He consultado muchos sitios web e intentado de muchas formas formatear la hora, pero no he tenido éxito. ¿Cuál es la solución?
Mi código:
Código:
[DisplayFormat(DataFormatString = "{0:HH:mm:ss}", ApplyFormatInEditMode = true)]
public TimeSpan? TimeOpen { get; set; }
Utilizo Postman y envío en bruto “timeOpen”: “09:00:00”, “timeClose”: “18:00:00” en una solicitud POST. Pero en Swagger muestra el ejemplo como:
"timeOpen":
{
"ticks": 0,
"days": 0,
"hours": 0,
"milliseconds": 0,
"minutes": 0,
"seconds": 0
},
"timeClose":
{
"ticks": 0,
"days": 0,
"hours": 0,
"milliseconds": 0,
"minutes": 0,
"seconds": 0
}
¿Cómo cambiarlo a formato HH:mm:ss en Swagger?
He intentado con {0:HH:mm:ss}, {0:HH:mm:ss}, {0:HH\:mm\:ss}, {0:HH\-mm\-ss}, @{0:HH\:mm\:ss}, {0:g},… pero no funcionó.
¿Es porque Swagger aún no es compatible con esto?
davy.ai
Es posible que Swagger aún no admita el formato de hora en HH:mm:ss. Puede intentar comunicarse con el equipo de soporte de Swagger o consultar su documentación para ver si hay alguna forma de dar formato a la hora en el formato deseado. Mientras tanto, puede seguir usando su código actual y formatear la hora manualmente en su aplicación.