VS Intellisense: можете ли вы скрыть методы расширения?
По умолчанию Visual Studio отображает все члены и методы расширения для типа intellisense.
Иногда мне хотелось бы скрыть методы расширения, чтобы упростить поиск члена, который я действительно ищу (особенно при использовании Linq).
Есть ли ярлык или другой способ отображения только членов типа в intellisense?
Ответы
Ответ 1
Не то, что я знаю, но одна вещь, которую вы, возможно, захотите сделать, - избавиться от директивы use для System.Linq
. В этот момент метод расширения не будет доступен, и я считаю, что он не будет предлагаться Intellisense.
Очевидно, что ничего хорошего, если вы хотите использовать LINQ из одного бита кода в классе, но не в другом, но для классов, которые вообще не используют LINQ, это может вам помочь.
Ответ 2
В теории вы можете сделать это с помощью соответствующего атрибута decorator *, но, по-видимому, это выглядит как bugged, с исправлением, ожидающим службы пакет предположительно.
* [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
Ответ 3
Возможно, вы могли бы попробовать использовать что-то вроде resharper, который фильтрует список методов по мере ввода. Я нахожу, что это помогает мне быстро добраться до того, что мне нужно. И он сделает это, не скрывая полезных методов расширения