У меня есть общая сборка/проект, который имеет абстрактный базовый класс, а затем несколько производных классов, которые я хочу публиковать в других сборках.Внутренний абстрактный класс: как скрыть использование вне сборки?
Я не хочу, абстрактный базовый класс, чтобы показать в этих других сборок в Intellisense, поэтому я думал, что сделать это internal
, но я получаю эту ошибку:
Inconsistent accessibility: base class 'Settings' is less accessible than class 'IrcSettings' ....
я не делаю действительно получить это. Я вынужден сделать реферат Settings
класс public
и таким образом виден вне этой сборки.
Как я могу сделать этот класс internal
?
Просто небольшая точка, вы можете иметь интерфейсы как базовый тип, который является внутренним для сборки, но его члены (реализации) будут общедоступны (доступны вне сборки). Если абстрактный класс не имеет какой-либо реализации, и все члены общедоступны, то следует предпочесть интерфейс. – nawfal