У меня есть ситуация, использующая наследование таблиц классов, когда базовый объект (который является абстрактным) расширяется определенными типами объекта.
Например, Персона -> Пользователь -> Перспектива
Однако, в некоторых случаях, например, в Prospect, иногда он расширяет пользователя, а иногда нет. Я не могу изменить отношения, потому что Пользователь! == Перспектива, поэтому мне интересно, как лучше всего справиться с такими сценариями, когда объект иногда расширяется, а иногда нет.
Кроме того, я знаю, что в этом случае кто-то предложит композицию вместо наследования, но это действительно неосуществимо, поскольку я полагаюсь на возможность расширять родительскую функциональность, а свойства элемента заполняются так, чтобы все свойства были доступны точно так же манера.