C# 프로그래밍 - 팀프로젝트 TextRPG#5

Sungchan Ahn(안성찬)·2024년 10월 2일

내일배움캠프

목록 보기
36/104

문제점

플레이어 클래스를 Json으로 직렬화하여 저장하고 다시 역직렬화했을 때 스킬에 대해서 NullReferenceException이 발생했다.
캐릭터에서 스킬 클래스의 인스턴스를 생성하는데 역직렬화 후 인스턴스를 참조하지 못했다.

해결

마이크로소프트 Learn - .Net - JSON을 .NET 개체로 읽는 방법(역직렬화) - 역직렬화 동작
"변경 불가능한 개체 또는 퍼블릭 set 접근자가 없는 속성에 대한 Deserialization이 지원되지만 기본적으로 활성화되지는 않습니다."
https://learn.microsoft.com/ko-kr/dotnet/standard/serialization/system-text-json/deserialization

스킬 클래스의 프로퍼티에 set 접근자가 없었다. 아래의 코드로 변경해주었다.

public List<Skill> SkillList { get; set;}
profile
게임 개발 기록

0개의 댓글