Я хотел бы сериализации этого непреложного классаDart сериализация неизменных объектов
class CatalogueItem {
final Uri source;
final DateTime analyis;
final Period fromTo;
CatalogueItem.create(this.source, this.analyis, this.fromTo);
}
Но я не могу, поскольку это не просто класс. С веб-сайта https://www.dartlang.org/articles/serialization/
Simple: Все объекты должны быть Сериализованные передачи данных объектов (DTO) с конструктором по умолчанию.
Поэтому я должен добавить конструктор по умолчанию - это означает, что я должен удалить последние ключевые слова, а мой класс больше не является неизменным.
class CatalogueItem {
Uri source;
DateTime analyis;
Period fromTo;
CatalogueItem.create(this.source, this.analyis, this.fromTo);
CatalogueItem(){}
}
Есть ли какой-либо путь вокруг этого?
Попробуйте пакет dartson, который предлагает несколько вариантов настройки. Если вы столкнулись с проблемой или проблемой, обновите этот вопрос с помощью кода, который вы попробовали, и любых ошибок, которые вы могли бы получить. Благодаря! –
Я думаю, что конструктор по умолчанию нужен только для десериализации (никогда не использовал пакет для (де) сериализации). Сериализация не нужна. –
Api жалуется, если у вас нет стандартного конструктора по умолчанию при сериализации объекта. Мне также нужно десериализовать его – richard