В настоящее время я пишу файл DLL, который использует некоторые наследования.Теперь у меня возникли проблемы с раскрытием моих классов, потому что выставлены также все базовые классы.
Например:
public Class TestBase // Base class that gets exposed
{
}
public Class TestFunctions : TestBase // The class that I want to expose gets exposed
{
}
Проблема внутренних или других модификаторов (например, защищенных):
internal Class TestBase // Base class that won't get exposed
{
}
internal Class TestFunctions : TestBase // The class that I want to expose won't get exposed either
{
}
Я хочу предоставить TestFunctions
пользователю файла DLL, но я не хочу предоставлять TestBase
, поскольку базовый класс используется только для внутреннего использования.Предоставление базового класса является избыточным для пользователя DLL, поскольку все, что ему нужно, содержится внутри одного класса функций.Как мне добиться того, что мне нужно?Я слышал, что интерфейсы могут помочь мне, но я не могу понять, что именно мне нужно сделать, так как пользователь не может создать экземпляр.