Медленно "Найти все ссылки" в Visual Studio
У меня есть решение VS, которое содержит 6 проектов библиотеки и 1 проект веб-папки.
Когда я пытаюсь использовать функцию "Найти все ссылки" для объекта или метода, это занимает более 6 минут!
Похоже, что рефакторинг каждого aspx и ascx файла веб-проекта.
Есть идеи, как сделать это быстрее?
3 ответа
Вы не упомянули, какую версию Visual Studio вы используете, но я нашел объявление, в котором утверждается, что они сделали некоторые улучшения производительности между 2005 и 2005SP1.
Мы внесли изменения в VS2005 SP1 (и включили его в VS 2008), который оптимизирует производительность в веб-проектах, выполнив сначала лексический поиск рефакторинга элемента, чтобы определить, должна ли страница быть загружена. Я прошу прощения за то, что нам потребовалось так много времени, чтобы обновить эту проблему с разрешением; было несколько связанных ошибок, и в то время как мы обновляли большинство, нам удалось пропустить некоторые.
Мы ожидаем, что в будущем мы сделаем еще больше улучшений производительности для этого сценария (после VS 2008), но мы надеемся, что проведенная нами оптимизация значительно повысит производительность в большинстве случаев.
Кроме того, это решение вроде отстой, но MS также предложила этот обходной путь:
Что касается обходных путей, вы можете значительно повысить производительность, если откроете все веб-страницы до выполнения рефакторинга. Я согласен, что это не очень хороший обходной путь, но для VS 2005 мы решили расставить приоритеты над производительностью для рефакторинга.
Источник: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=92239
Я попытался бы удалить все ваши файлы ncb, эти файлы иногда бывают повреждены и могут иметь много различных эффектов. Поскольку ваша функция использует их, это может помочь, они будут автоматически обновлены при следующем открытии решения.
Это кажется медленным, у меня есть решение с 276 проектами (не спрашивайте), и поиск ссылок занимает менее шести минут.
Я начал использовать Source Insight и нашел его намного быстрее.
Еще одна мысль, ваша проверка на вирусы может мешать. Sysinternals filemon или procxp подтвердит.