Я просто может чего не совсем понимаю, но скажи пожалуйста, где должны быть расположены реализации методов
_ПриЗаписиСвойства() ,
_ПриПолученииСвойства() и вызов метода
ДобавитьДинамическоеСвойство() - в базовом классе, или в классе наследнике. Предложенная парой постов выше схема когда
ДобавитьДинамическоеСвойство() расположено в базовом классе, а
_ПриЗаписиСвойства() ,
_ПриПолученииСвойства() реализованы в наследниках - не работает.
Цитата:Поле агрегатного объекта не обнаружено.
Вот ее диагноз.
Если убрать
_ПриЗаписиСвойства() и
_ПриПолученииСвойства() из наследника в базовый класс - перестает работать
ДобавитьДинамическоеСвойство(), расположенное в базовом классе, с ошибкой
Цитата:КОП::ДобавитьДинамическоеСвойство: в классе должны быть реализованы соответствующие методы _ПриЧтенииСвойства и _ПриЗаписиСвойства
В настоящее время работает лишь один вариант - когда реализации методов
_ПриЗаписиСвойства() ,
_ПриПолученииСвойства() и вызов метода
ДобавитьДинамическоеСвойство() расположены в каждом из наследников. А базовый класс вызывает методы классов-наследников для добавления динамических свойств.
Есть вариант, совсем как бы, неправильный это реализация методов _ПриЧтенииСвойства и _ПриЗаписиСвойства
и в базовом классе
и в наследнике. Тогда вызов
Сам(Контекст).ДобавитьДинамическоеСвойство() можно вызывать и из методов базового класса.
Я предполагал, изначально, что можно будет реализовать всю механнику работы с динамическими свойствами (их добавление, запись и чтение) в базовом классе, а в классах наследниках вообще не парится на эту тему.