반응형
ASP에 시간이 없는 날짜.NET Web API의 JSON 출력
JSON을 설정하는 간단한 방법이 있습니까?NET을 통해 DateTime
필드는 시간 및 기타 없이 포맷됩니다.DateTime
필드의 형식은 시간에 따라 계속 지정됩니까?
예:
{ firstName: 'John', lastName : 'Doe', birthday: '1965-09-23' }
특정 필드에만 영향을 미치도록 하려면 먼저 변환기 유형을 만듭니다.
public class OnlyDateConverter : IsoDateTimeConverter
{
public OnlyDateConverter()
{
DateTimeFormat = "yyyy-MM-dd";
}
}
그런 다음 이 속성을 원하는 필드/속성에 추가합니다.
[JsonConverter(typeof(OnlyDateConverter))]
다음 행을 추가하여 웹 API를 구성하십시오.
config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(
new IsoDateTimeConverter() { DateTimeFormat = "yyyy-MM-dd" });
Yosesef의 답변은OnlyDateConverter
최고입니다.하지만 여기 한 가지 대안이 있습니다.
private DateTime _birthday;
public string Birthday
{
get { return _birthday.ToString("yyyy-MM-dd"); }
set {
_birthday = DateTime.ParseExact(value, "yyyy-MM-dd",
CultureInfo.InvariantCulture);
}
}
장점 - Newtonsoft를 구속할 필요가 없습니다.Json 라이브러리를 수업에 사용할 수 있습니다.
단점 - 속성을 사용하는 모든 위치에 문자열로 표시되므로 자체 문제가 발생할 수 있습니다.
언급URL : https://stackoverflow.com/questions/16320762/dates-without-time-in-asp-net-web-apis-json-output
반응형
'source' 카테고리의 다른 글
Angularjs에서 여러 개의 제출을 방지하기 위해 클릭 한 번 후 제출 버튼을 비활성화하려면 어떻게 해야 합니까? (0) | 2023.04.04 |
---|---|
반응/축소 및 다국어(국제화) 애플리케이션 - 아키텍처 (0) | 2023.03.25 |
형식 스크립트에서 사전 선언 및 초기화 (0) | 2023.03.25 |
모든 Spring Boot 액추에이터 엔드포인트에 프리픽스 추가 (0) | 2023.03.25 |
응용 프로그램을 시작하기 전에 @MockBean 구성 요소 구성 (0) | 2023.03.25 |