Почему мое решение перестало распознавать использование директив? - PullRequest
1 голос
/ 12 августа 2010

У меня есть решение, над которым я работал вчера без проблем. Сегодня я открыл то же решение, и VS 2008 подчеркнул, что некоторые директивы использования выделены красным. При наведении курсора на подчеркнутые директивы появляется всплывающая подсказка: «Я пропустил ссылку на сборку?» Я не так, как я пытался добавить ссылки, и это ничего не делает для решения проблемы.

Что еще страннее, проект компилируется и запускается без проблем, поэтому только VS2008 имеет проблемы с проектом. Я хотел бы вернуть все свои объекты в состояние, в котором Intellisense распознает их, пытаясь сохранить код, когда VS не распознает такие объекты, как DataTable, RegEx и TableCell, очень расстраивает.

Директивы using в верхней части моей страницы выглядят следующим образом: полужирные больше не распознаются после ссылки на пространство имен System, остальные работают нормально:

с использованием системы;
using System.Collections.Generic;
с использованием System.Data;
используя System.IO;
с использованием System.Text;
с использованием System.Text.RegularExpressions;
с использованием System.Web;
с использованием System.Web.UI;
с использованием System.Web.UI.WebControls;

Я не очень понимаю, что изменилось за одну ночь, чтобы разрушить проект. Есть предложения?

Ответы [ 3 ]

2 голосов
/ 12 августа 2010

Некоторые вещи, которые вы можете попробовать:

  • Удалите файлы .suo и .csproj.user в каталогах решений и проектов соответственно. (Файл .suo имеет атрибут hidden .)
  • Создайте новый пустой проект, в котором нет проблемы, с которой вы столкнулись, а затем сравните (используя инструмент сравнения файлов) новый файл .csproj с .csproj, в котором обнаружена проблема. Удалите вещи, которые кажутся излишними.
0 голосов
/ 12 августа 2010

Как некоторые комментарии по моему вопросу рекомендовали (и полностью вопреки инстинктам здравого смысла) очистить проект, перестроить его, а затем перезапустить VS2008 сделали свою работу ... Кто может сказать, почему?

Единственная разницаЭтим утром на моих компьютерах запускалось то, что утвержденное компанией решение безопасности McAfee System Hog (или как его там) решили поглотить большую часть ресурсов моей системы, загрузив и установив какое-то обновление.В течение этого периода мой компьютер очень медленно реагировал на все, что я сказал.Возможно, установка McAfee мешала обычной последовательности запуска VS.

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

0 голосов
/ 12 августа 2010

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

...