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, который фильтрует список методов по мере ввода. Я нахожу, что это помогает мне быстро добраться до того, что мне нужно. И он сделает это, не скрывая полезных методов расширения