>백엔드 개발 >C++ >전역 설정 없이 Json.Net에서 DateTime 직렬화를 위한 사용자 정의 날짜 형식을 지정하는 방법은 무엇입니까?

전역 설정 없이 Json.Net에서 DateTime 직렬화를 위한 사용자 정의 날짜 형식을 지정하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2025-01-16 00:01:47556검색

How to Specify Custom Date Formats for DateTime Serialization in Json.Net without Global Settings?

Json.Net 사용자 정의 DateTime 직렬화 날짜 형식

질문:

ASP.NET Web API에서 Json.Net 직렬화를 사용할 때 특정 애플리케이션의 요구 사항을 충족하기 위해 전역 설정을 수정하지 않고 사용자 정의 날짜 형식을 지정하는 방법은 무엇입니까?

정답:

권장되는 접근 방식은 선택적 형식 지정을 위해 사용자 정의 JsonConverter를 사용하는 것입니다. Json.Net은 사용자 지정 형식을 허용하는 IsoDateTimeConverter를 제공합니다. 형식은 JsonConverter 속성을 통해 직접 설정할 수 없으므로 하위 클래스를 만들고 해당 생성자에서 원하는 형식을 지정할 수 있습니다. 그런 다음 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>

시간 형식이 필요하지 않은 경우 IsoDateTimeConverter의 기본 날짜 형식을 직접 적용할 수 있습니다.

<code class="language-csharp">[JsonConverter(typeof(IsoDateTimeConverter))]
public DateTime ReturnDate { get; set; }</code>

위 내용은 전역 설정 없이 Json.Net에서 DateTime 직렬화를 위한 사용자 정의 날짜 형식을 지정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.