Медленно "Найти все ссылки" в Visual Studio

У меня есть решение VS, которое содержит 6 проектов библиотеки и 1 проект веб-папок.

Когда я пытаюсь использовать функцию "Найти все ссылки" для объекта или метода, для завершения требуется более 6 минут!

Кажется, рефакторинг каждого файла aspx и ascx веб-проекта.

Любая идея о том, как сделать это быстрее?

Ответ 1

Вы не указали, какую версию Visual Studio вы используете, но я нашел рекламный ролик, в котором утверждается, что они сделали некоторые улучшения производительности между 2005 и 2005SP1

Мы внесли изменения в VS2005 SP1 (и включил его в VS 2008), который оптимизирует производительность в веб-проектах сначала выполнив лексический поиск элемента, подлежащего рефакторингу определить, должна ли страница загружен. Прошу прощения за то, что он взял нас так долго, чтобы обновить эту проблему с помощью разрешающая способность; было несколько подключений ошибок, которые были связаны, и пока мы обновлено большинство из нас удалось пропустить некоторые.

Мы ожидаем, что в будущем мы сделаем еще больше улучшений производительности для этот сценарий (post VS 2008), но надеюсь, что у нас есть оптимизация значительно увеличили производительность в большинстве случаев.

Кроме того, это решение вроде бы засасывает, но MS предложила это обходное решение:

В отношении обходных решений вы можете повысить эффективность значительно, если вы откроете все веб-страниц до выполнения рефакторинг. Я согласен, что это не особенно хорошо обходной путь, но для В VS 2005 мы решили перенести правильность выполнения рефакторинга.

Источник: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=92239

Ответ 2

Это кажется медленным, у меня есть решение с 276 проектами (не спрашивайте), и для поиска ссылок требуется менее шести минут.

Я начал использовать Source Insight и нашел его намного быстрее.

Другая мысль, ваша проверка на вирусы может мешать. Sysinternals filemon или procexp подтвердит.

Ответ 3

Я бы попробовал удалить все ваши ncb файлы, эти файлы иногда повреждаются и могут иметь много широкомасштабных эффектов. Поскольку ваша функция использует их, это может помочь, они будут автоматически восстановлены при следующем открытии вашего решения.