JSON 입력

C# 출력

JSON을 C#으로란?

.NET 앱에 서드파티 API를 통합할 때, JSON 문서는 받을 수 있지만 응답을 역직렬화하려면 타입이 지정된 C# 클래스가 필요합니다. 깊이 중첩된 객체를 수작업으로 작성하는 건 정말 번거롭습니다. 이 도구는 JSON에서 C# POCO를 자동으로 생성합니다. 샘플 API 응답을 붙여넣으면 프로젝트에 바로 넣을 수 있는 클래스 정의를 얻을 수 있습니다. System.Text.Json이나 Newtonsoft.Json에서 바로 작동합니다.

변환은 브라우저에서 수행됩니다. 클래스 이름, 속성 대 필드, nullable 타입에 대한 구성 옵션을 사용하세요. 서버로 전송되지 않습니다.

이 도구 사용 방법

1

JSON 붙여넣기

왼쪽 편집기에 JSON을 붙여넣거나 파일을 업로드합니다. 샘플 데이터를 보려면 샘플을 사용하세요. 구성 패널에서 루트 클래스 이름과 옵션(속성, Nullable)을 설정하세요.

2

클래스 확인

오른쪽 패널에 생성된 C# 클래스가 표시됩니다. 중첩 객체는 자체 클래스가 됩니다. 배열은 List<T> 또는 T[]가 됩니다. 다른 JSON 키에 대해 필요한 경우 [JsonPropertyName] 속성을 추가하세요.

3

복사 또는 다운로드

복사 또는 다운로드를 사용하여 코드를 가져옵니다. .NET 프로젝트에 붙여넣으세요. 먼저 JSON을 서식 지정하려면 JSON 포매터를 사용하세요. 검증을 위해 JSON 검증기를 사용하세요.

JSON을 C#으로 변환 예시

다음은 JSON 객체에서 C# 클래스를 생성하는 예시입니다.

예시: 구독자 레코드

JSON 입력:

입력

생성된 C# 출력:

출력

JSON을 C#으로 변환이 도움이 되는 경우

.NET, ASP.NET Core 또는 Blazor에서 REST API를 통합할 때 역직렬화를 위한 C# 타입이 필요합니다. 샘플 응답을 여기에 붙여넣으면 JsonSerializer.Deserialize<T>() 또는 Newtonsoft.Json용 POCO가 생성됩니다. API 테스트를 위해 Postmanjq가 유용합니다.

JSON을 C#으로 변환 예시

예시: JSON 객체를 C# 클래스로 변환

JSON 입력:

{"subscriberId":"SUB-001","planName":"Premium 4G","dataLimit":"50GB","voiceMinutes":500,"status":"활성"}

생성된 C# 클래스:

public class RootObject
{
    public string SubscriberId { get; set; }
    public string PlanName { get; set; }
    public string DataLimit { get; set; }
    public int VoiceMinutes { get; set; }
    public string Status { get; set; }
}

자주 묻는 질문

C#에서 JSON을 역직렬화하려면 어떻게 하나요?

System.Text.JsonJsonSerializer.Deserialize<YourClass>(jsonString) 또는 Newtonsoft.Json의 JsonConvert.DeserializeObject<YourClass>(jsonString)를 사용하세요. 일치하는 C# 클래스가 필요한데, JSON을 붙여넣어 여기서 생성할 수 있습니다.

JSON 키가 C# 명명 규칙과 맞지 않으면 어떻게 하나요?

속성에 [JsonPropertyName("json_key")](System.Text.Json) 또는 [JsonProperty("json_key")](Newtonsoft)를 사용하세요. 또는 자동 매핑을 위해 JsonSerializerOptions.PropertyNamingPolicyJsonNamingPolicy.CamelCase로 설정할 수도 있습니다.

C#의 nullable 참조 타입은 어떻게 되나요?

설정에서 Nullable Types를 활성화하면 string?, int? 등이 생성됩니다. JSON 필드가 null이거나 없을 수 있을 때 유용합니다. #nullable enable 또는 nullable을 지원하는 프로젝트 설정이 필요합니다.

내 JSON이 서버로 전송되나요?

아니요. 클래스 생성은 완전히 브라우저에서 실행됩니다. JSON이 내 기기를 절대 떠나지 않으므로, 프로덕션 API 키나 민감한 데이터도 안전하게 사용할 수 있습니다.

프로퍼티와 필드 — 어느 것을 사용해야 하나요?

프로퍼티(get; set;)는 C#에서 DTO의 표준입니다. System.Text.Json과 Newtonsoft.Json 모두 기본적으로 공개 프로퍼티를 직렬화합니다. 필드도 작동하지만, 데이터 전송 객체에는 덜 일반적입니다.

관련 도구

System.Text.Json. Newtonsoft.Json. JSON 사양. RFC 8259. MDN. .NET. Postman.