Приветствую.
Имеется такой набор классов Delphi XE2:
TBaseAbstractClass = class abstract
name : string;
end;
TDerivedClassStr = class(TBaseAbstractClass)
value : string;
end;
TDerivedClassFloat = class(TBaseAbstractClass)
value : float;
end;
TMyObject = class
objs : array of TBaseAbstractClass;
end;
Есть JSON:
{
[
{"name" : "name1", "value" : "value1"},
{"name" : "name1", "value" : "value2"}
]
}
Его можно десериализировать как TMyObject, но тогда теряются value, а привидение типов вызывает ошибку (что мне совсем не очевидно).
Десериализация производится библиотекой
superobject.
Есть ли способ сохранить значение value, но так, чтобы не создавать:
TMyObject = class
objs : array of TDerivedClassStr;
end;