Visual Studio Найти все ссылки и рефакторинг перестал работать - PullRequest
1 голос
/ 20 августа 2010

Я работаю с довольно сложным решением в Visual Studio 2008. Оно содержит 2 веб-приложения, 5 библиотек классов, консольное приложение и проект установки msi, все они написаны на c #. Суть в том, что Find All References, Find Symbols и некоторые части Refactoring больше не работают. Мне нужно было выяснить, почему свойство одного из классов в библиотеке классов не было установлено, когда оно должно было быть. Поэтому я нашел все ссылки, и он нашел только некоторые из ссылок, только те, которые находятся внутри проекта, который содержит рассматриваемый класс. Я точно знаю, что в одном веб-приложении есть куча. Когда он выполняет поиск, я вижу, что он ищет ВСЕ проекты в решении. Я получаю ту же проблему, когда делаю символы поиска и пытаюсь использовать функцию переименования рефакторинга. Я могу обойти это ограничение, используя стандартные команды find и Replace или закомментировав соответствующий раздел кода и выбрав ошибки после сборки. Похоже, что это связано с решением, поскольку это также происходит с моей коллегой из Visual Studio для того же решения. Это не ограничено определенной собственностью или классом, это, кажется, случается повсюду. Единственная последовательность состоит в том, что только когда-либо кажется, что ссылки в рамках проекта озвучиваются. Хорошим примером этого является то, что я могу найти ссылку в веб-приложении, щелкнуть правой кнопкой мыши и сказать, что найти все ссылки, и если он возвращает 0 результатов, то есть он даже не находит ссылку, на которой щелкнул правой кнопкой мыши.

tl; dr Find All References находит ссылки только в том проекте, в котором они объявлены.

Если кто-нибудь может указать мне правильное направление с этим, это было бы очень полезно.

Ответы [ 2 ]

1 голос
/ 20 августа 2010

Сколько памяти у вас на ваших машинах - попробуйте увеличить вашу оперативную память.Я страдал от таких проблем раньше, и они исчезли, когда я увеличил свою память.

Другим предложением может быть создание двух решений - одно со всем, а другое (рабочее решение) с необходимыми вещами - например, вы можете исключить проект установки - просто требуется слишком много времени для загрузки / сборки.Вы найдете урезанное решение гораздо более гибким, чем полное решение.Когда вы создаете сборку, используйте законченное решение.

0 голосов
/ 02 сентября 2010

Это очевидно, но Find All References может перестать работать, если у вас есть ошибка компиляции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...