У меня слишком много перегрузок методов для каждого метода, и я думаю, как сделать MyClass более понятным и доступным для других разработчиков. Мои идеи:Как скрыть перегрузки методов из intellisense и файла основного кода класса, когда проект является частью решения VS2013?
1.
сделать частичный класс и новый MyClassOldMethods.cs имени файла со всеми методами отмечены
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
это не работают, потому что проект является частью решения.
2.
Сделать старый метод перегрузки, как метод расширения в другой файл в новом статическом классе. Но я не могу скрыть их от intellisense или я могу?
Существует много существующего кода, поэтому решение должно быть обратно совместимым. У меня такое чувство, что это неправильно на первом месте, но можно ли это сделать?
Редактировать: SO хочет, чтобы я объяснил, что How to hide public methods from intellisense не является дубликатом. он не отвечает на вопрос. Я прочитал его перед публикацией. В ответах четко указано, что EditorBrowsableState не скрывает ничего в одном решении и не имеет ничего общего с разделением устаревших, но где-то используемых перегрузок. Я хочу знать, неправильно ли переместить экземпляры mthods в методы расширения.
Возможный дубликат [Как скрыть общедоступные методы из intellisense] (http://stackoverflow.com/questions/9086136/how-to-hide-public-methods-from-intellisense) – stuartd
Ваши методы расширения будут скрыты от intllisense, если вы поместите их в отдельное пространство имен. Если вам нужен метод расширения, вы всегда можете добавить 'using some.namespace.with.extensions', и он будет доступен снова. –
@stuartd: не дублируется. он не отвечает на вопрос. Я прочитал его перед публикацией. В ответах четко указано, что EditorBrowsableState не скрывает ничего в одном решении и не имеет ничего общего с разделением устаревших, но используемых перегрузок. –