Возможно ли как-то добиться такого поведения в С#:
public interface IReadOnly
{
Data Value { get; }
}
internal interface IWritable : IReadOnly
{
Data Value { get; set; }
}
Я хочу, чтобы иметь возможность открывать интерфейс для чтения для внешних сборок, но использовать встроенный для записи интерфейс (который я также мог бы реализовать по-разному).
Я знаю, что могу использовать абстрактный класс, который реализует IReadOnly
, но добавляет сеттеры, но это заставляет меня выводить все внутренние реализации из этого класса.