Я использую класс ActiveRecordBase Castle Active Record в качестве базового класса для моих объектов БД.Это позволяет мне воспользоваться преимуществами AR-паттернов, например:
MyClass clas = new MyClass();
clas.Number = 5;
clas.Save();
Проблема в том, что для некоторых объектов я хочу скрыть эти методы.Как я могу это сделать?Я не использую интерфейсы для этих объектов.
Edit1: Чтобы сделать это более ясным: я хочу, чтобы 10 классов наследовали от базового, но 3 из них не должны раскрывать некоторые методы изБазовый класс.Так, например, для MyClassB это:
MyClassB clasB = new MyClassB();
clasB.Number = 5;
clasB.Save();
не должно быть возможным - этот объект НЕ ДОЛЖЕН сохранять ().
Edit2: я прочитал c # скрывает от дервидированных классов некоторые свойства базового класса .Я согласен, что это плохой подход, но имейте в виду, что я должен использовать ActiveRecordBase, который я не могу просто изменить (по крайней мере, если я хочу придерживаться исходных источников Castle Active Record).