Maison >développement back-end >C++ >Comment spécifier des formats de date personnalisés pour la sérialisation DateTime dans Json.Net sans paramètres globaux ?
Question :
Lors de l'utilisation de la sérialisation Json.Net dans l'API Web ASP.NET, comment spécifier un format de date personnalisé tout en évitant de modifier les paramètres globaux pour répondre aux besoins d'une application spécifique ?
Réponse :
L'approche recommandée consiste à utiliser un JsonConverter personnalisé pour le formatage sélectif. Json.Net fournit un IsoDateTimeConverter qui permet un formatage personnalisé. Étant donné que le format ne peut pas être défini directement via la propriété JsonConverter, vous pouvez créer une sous-classe et spécifier le format souhaité dans son constructeur. Un convertisseur personnalisé peut ensuite être appliqué à une propriété spécifique à l'aide de la propriété JsonConverter :
<code class="language-csharp">class CustomDateTimeConverter : IsoDateTimeConverter { public CustomDateTimeConverter() { base.DateTimeFormat = "yyyy'-'MM'-'dd"; } } class ReturnObjectA { [JsonConverter(typeof(CustomDateTimeConverter))] public DateTime ReturnDate { get; set; } }</code>
Si vous n'avez pas besoin du format d'heure, vous pouvez appliquer directement le format de date par défaut d'IsoDateTimeConverter :
<code class="language-csharp">[JsonConverter(typeof(IsoDateTimeConverter))] public DateTime ReturnDate { get; set; }</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!