Здравствуйте, Козьма Прутков, Вы писали:
>>ну, friend'ов в C# нету, так что в лоб по сишному сделать не удастся. Но в этом случае можно, наверно, сделать так. Определяем некий интерфейс или базовый класс, функциональности которого достаточно для использоватния контекста всеми кроме А. Теперь делаем приватный вложенный в А класс контекста, являющийся наследником от описанного класса/интерфейса. Ну, а теперь, как можно догадаться, в методе GetContext создаем объект своего внутреннего класса и возвращаем ссылку на базовый класс/интерфейс. И так со всеми классами, у которых есть разница в доступной функциональности в зависимости от потребителя.
Спасибо, неплохое решение. Скорее всего так и поступлю.