더북(TheBook)

5.   이번에는 JSON 데이터를 C# 개체로 변환하는 역직렬화를 구현하겠습니다. 역직렬화는 JsonConvert 클래스의 DeserializeObject() 메서드를 사용합니다.

> //② 역직렬화(deserialize) 데모
. string json2 = @"{
.     'Name': 'Black Shirt',
.     'Created': '2020-12-31T00:00:00',
.     'Sizes': ['Large', 'Small' ]
. }";
. Shirt shirt2 = JsonConvert.DeserializeObject<Shirt>(json2);
. Console.WriteLine($"{shirt2.Name} - {shirt2.Created}");
Black Shirt - 2020-12-31 오전 12:00:00
> Console.WriteLine(string.Join(",", shirt2.Sizes.ToArray()));
Large,Small

Json2 문자열에 저장된 JSON 데이터를 형태가 같은 Shirt 개체로 변환하여 각 속성 값을 출력한 것처럼 JSON.NET을 사용하면 쉽게 직렬화 및 역직렬화를 구현할 수 있습니다.

닷넷에서는 많은 수의 XML과 JSON 관련 API를 제공하는데, 필요할 때마다 이들을 모두 호출해서 사용할 수 있어야 합니다. 이 책을 모두 학습한 후 웹과 모바일 프로그래밍을 좀 더 공부하고 싶을 때는 관련 도서나 마이크로소프트 Docs 온라인 설명서로 XML과 JSON 관련 API들을 자세히 알아보길 권장합니다. 현재는 ‘이러한 것이 있구나’ 정도로 짧게 소개만 했습니다.