Не получается сериализовать класс при помощи JsonUtility.ToJson().
В файле всегда пустые скобки.
Класс:
[Serializable]
public class DataModel
{
public bool IsLevelCompleted;
public int TopScore;
public int LevelNumber;
}
Добавляю в List<DataModel>
gameData.Add (new DataModel ()
{
IsLevelCompleted = true,
LevelNumber = LevelSelector.SelectedLevel,
TopScore = this.Score
});
string json = JsonUtility.ToJson(gameData);
Для работы сериализатора Unity, согласно документации, поля действительно должны быть полями, причём public, всё правильно.
Попробуйте для списка создать отдельную обёртку, так должно работать:
[Serializable]
public class DataModel
{
public bool IsLevelCompleted;
public int TopScore;
public int LevelNumber;
}
[Serializable]
public class ListHolder
{
public List<DataModel> dataModels;
}
Идея взята с этого ответа на enSO, почитайте, действительно хороший ответ.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости