Как скрыть общедоступные методы от intellisense

Я хочу скрыть общедоступные методы из списка участников intellisense. Я создал атрибут, который при применении к методу вызывает вызов метода при создании его объекта. Я сделал это, чтобы лучше поддерживать частичные классы. Проблема в том, что в некоторых средах (например, Silverlight) отражение не может получить доступ к частным членам даже дочерним классам. Это проблема, поскольку вся работа выполняется в базовом классе. Мне нужно сделать эти методы общедоступными, но я хочу, чтобы они были скрыты от intellisense, подобно тому, как работает атрибут Obsolete . Честно говоря, потому что я неравнодушен к инкапсуляции объектов. Я пробовал разные вещи, но ничего не помогло.Метод по-прежнему отображается в раскрывающемся списке участников.

Как сделать так, чтобы общедоступные методы не отображались в intellisense, если я не хочу, чтобы они вызывались клиентами? Как это для настоящего вопроса, филистимляне! Это также может относиться к свойствам MEF, которые должны быть общедоступными, хотя иногда вы хотите скрыть их от клиентов.

Обновление: Я повзрослел как разработчик с тех пор, как разместил этот вопрос. Почему я так заботился о сокрытии интерфейса, мне непонятно.

49
задан Jordan 16 April 2015 в 03:04
поделиться