У меня проблема с Visual Studio для решения C #. Он отображает абсолютно случайные ошибки, но проекты создаются. Сейчас у меня 33 файла с ошибками, и я вижу красные волнистые линии во всех них.
Я попытался очистить / перестроить решение, закрыть Visual Studio и даже перезагрузить компьютер. Я также позаботился о том, чтобы шаги, описанные в разделе «Отладка», выполнялись даже с ошибками компилятора в Visual Studio. Я могу изменить файлы .cs, и я вижу изменения в решении.
У кого-нибудь есть идея о том, почему он это делает?
c#
visual-studio
syntax-error
resharper
intellisense
GammaOmega
источник
источник
Ответы:
Если у вас есть ReSharper, попробуйте очистить кеш ReSharper:
и отключение и повторное включение ReSharper:
источник
Очистка кеша Resharper в моем случае не помогла, попробовал приостановить / восстановить , а также восстановить Resharper, используя последнюю загрузку с сайта JetBrains - ничего из этого не помогло. Это после того, как я попытался закрыть / открыть VS, перезагрузить компьютер, повторить, Build / Rebuild и их комбинацию.
Интересно, что приостановка Resharper, казалось, решила проблему после 2-го перезапуска VS, но она вернулась после того, как я включил Resharper <- я пытался выполнить эту последовательность 2-3 раза, чтобы убедиться в паттерне.
Во всяком случае, у меня все еще были проблемы, когда я нашел эту статью:
Поэтому я удалил скрытый файл .SUO на том же уровне папок с решением, и он волшебным образом решил все красные.
Примечание. Для Visual Studio 2015 файл .SUO находится в скрытой папке .vs / [имя_решения] / v14 .
источник
tldr; Выгрузите и перезагрузите проблемный проект.
Когда это происходит со мной, я (раньше) пытался закрыть VS и снова открыть его. Это, вероятно, работало примерно половину времени. Если это не помогло, я бы закрыл решение, удалил файл .suo (или всю папку .vs) и заново открыл решение. До сих пор это всегда работало для меня (более 10 раз за последние 6 месяцев), но это немного утомительно, потому что некоторые вещи сбрасываются, такие как режим сборки, запуск проекта и т. Д.
Поскольку проблема обычно возникает только в одном проекте, я просто попытался выгрузить этот проект и перезагрузить его, и это сработало. Мой размер выборки всего 1, но он намного быстрее, чем два других варианта, поэтому, возможно, стоит попробовать. Я подозреваю, что это работает, потому что он пишет в файл .suo и, возможно, исправляет поврежденную часть, из-за которой возникла проблема.
Примечание: похоже, что это работает для VS 2019, 2017 и 2015.
источник
Я очистил решение, закрыл VS, снова открыл его, собрал решение, и красные неразрешенные линии были очищены и сборка прошла успешно.
источник
Я обнаружил, что это часто случается при использовании Git в Visual Studio 2017, переключая ветки, где есть зависимые изменения кода . Даже если проект будет успешно построен, в списке ошибок останутся ошибки.
Эти ошибки часто являются проблемами пространства имен и отсутствующими ссылками, даже если ссылка на библиотеку существует.
Решить:
источник
Я перепробовал все 6 вариантов, у меня ничего не получалось. Ниже решение решило мою проблему.
Закрыть VS. Удалите скрытую папку «.vs» рядом с файлом решения. Перезапустите VS и загрузите решение.
источник
У меня была такая проблема, когда Intellisense, похоже, не распознавал существование одного проекта (множество «не могу найти этот тип», «это пространство имен не существует» и т. Д.).
Удаление и повторное добавление ссылки на проект во всех ссылочных проектах позволило бы устранить проблему, но основную причину можно устранить, отредактировав файл .proj проблемного проекта.
В верхней части «пропавшего» проекта в файле .csproj находится элемент:
и во всех ссылочных проектах файлы .csproj были ссылками на проекты:
Ссылочный GUID не совпадает с GUID проекта. Замена
{GUID}
выше{ANOTHER-GUID}
исправила проблему без необходимости проходить через каждый ссылочный проект.источник
Вот коллекция популярных ответов. Upvote ОП ответа, если он помог вам:
Вариант 1. Очистить, построить и обновить ( опция @Mike Fuchs )
Как упоминал @Mike Fuchs , попробуйте выполнить следующие операции:
и выберите проект, о котором идет речь, и нажмите кнопку обновления:
Вариант 2: очистить, закрыть, перезапустить и построить ( опция @Pixel )
Как уже упоминалось @Pixel , попробуйте следующую последовательность операций:
Вариант 3: очистить кеш ReSharper ( опция @GammaOmega )
Если у вас есть ReSharper, попробуйте очистить кеш ReSharper:
и отключение и повторное включение ReSharper:
Вариант 4. Удалите файл .suo ( опция @Neolisk ).
Как упомянул @Neolisk , удаление файла .suo может решить вашу проблему. Для Visual Studio 2015 файл находится в:
И для Visual Studio 2017:
Обратите внимание, что каталог .vs скрыт.
Вариант 5: выгрузить и перезагрузить проект ( опция @TTT )
Как упоминалось в @TTT , попробуйте выгрузить проект, который вызывает проблемы:
И перезагрузить его
Вариант 6: удалить и добавить ссылку на Microsoft.CSharp ( опция @Guilherme )
Как упомянул @Guilherme , попробуйте удалить и добавить ссылку на «Microsoft.CSharp» из проектов, в которых есть проблемы.
источник
Удалите путь к скрытому файлу = ваше решение \ .vs \ Имя вашего решения \ v15 \ .suo
источник
для VS-2017 удаление папки .vs работало для меня.
источник
Я заметил, что иногда при переключении веток git Visual Studio (2017) не распознает типы из некоторых файлов, которые были добавлены во второй ветке. Удаление папки .vs решает ее, но она также удаляет все настройки вашего рабочего пространства. Этот трюк, кажется, хорошо работает для меня:
Это заставляет Intellisense анализировать файл, который он пропустил при переключении веток.
источник
Следующее решение сработало для меня
1 - Закрыть VS
2 - Удалить папку .vs
3 - Открытый VS
4 - Построить решение
источник
Возможно, вы пытаетесь сбросить кеш intellisense. У меня была похожая проблема в Visual Studio 2012, когда я работал над большим проектом со многими частичными определениями классов. Сокращение парциальных значений решило проблему частично, очистив кэш intellisense - на некоторое время.
источник
Иногда мне приходится делать пользовательскую очистку, просматривая все проекты и вручную удаляя папки «bin» и «obj». Чтобы увидеть их в Visual Studio, вам нужно включить скрытые файлы и папки для каждого проекта. После этого перестройте решение.
источник
Удаление
.vs
папки решило мою проблему.Но это также сбрасывает текущие настройки моего решения в VS. Мол, мои выгруженные проекты в решении были перезагружены, и все прикрепленные и открытые документы также были закрыты, когда я перезапустил VS.
источник
0 - Щелкните правой кнопкой мыши Решение и очистите решение.
1 - Закрыть VS
2 - Удалить файл проекта .suo
3 - Открытый VS
4 - Построить решение
источник
Мой коллега столкнулся с этой проблемой сегодня. Мы испробовали здесь множество рекомендаций, но ни одна из них не сработала, кроме решения, описанного ниже.
Проблема:
Проект строится нормально, но Intellisense не распознает определенные типы и помечает определенные
using
операторы как недействительные.Решение:
Измените «Платформу решений» (в VS 2017 это раскрывающийся список рядом с раскрывающимся списком «Конфигурация решения», который имеет значения, такие как x86, x64, AnyCPU, Mixed Platforms и т. Д.), На AnyCPU .
Платформа для вашего проекта может отличаться, но кажется, что некоторые ссылки могут быть недействительными для всех платформ.
источник
В моем конкретном случае это была ссылка на услугу, которую другой разработчик объединил в основную ветку. Это было прекрасно, за исключением того, что подсветка синтаксиса не смогла разрешить сгенерированный класс обслуживания, а источник был выделен красным цветом. Очистка, восстановление, перезагрузка ничего не сделали.
Все, что мне нужно было сделать, это обновить ссылку на сервис, и VS удалось собрать все детали за кулисы. Никаких изменений в исходном коде или сгенерированных файлах.
источник
Я только что столкнулся с этой проблемой после возврата git commit, который добавил файлы обратно в мой проект.
Очистка и перестройка проекта не работали, даже если я закрывал VS между каждым шагом.
То, что в итоге сработало, переименовало файл во что-то другое и снова изменило его. : Facepalm:
источник
Попробовав все перечисленные варианты, я обнаружил еще одну причину, по которой это может произойти. Если кто-то отправил вам исходный код в виде zip-файла или вы загрузили zip-архив, Windows может заблокировать все файлы. 2 способа решить эту проблему:
Способ 1:
Щелкните правой кнопкой мыши на исходном Zip-файле -> Отметьте «Разблокировать» -> Нажмите «Применить».
Способ 2:
Если это не вариант, вместо открытия свойств для каждого файла в папке решения просто откройте Power Shell и рекурсивно разблокируйте, используя следующее:
источник
Я надеюсь решить вашу проблему
источник
Была эта проблема на работе (работает VS2017). Перепробовал все ответы здесь. Нет радости
Проект строился бы просто отлично, но жаловался, что пространства имен / типы не могут быть найдены. Красные повороты повсюду. Много ошибок в окне Список ошибок.
Мое решение содержало 3 проекта.
Обнаружено, что 3 из ссылок на библиотеку NuGet для одного из проектов были вне очереди. Консолидированы ссылочные версии библиотеки и бинго.
Надеюсь, это кому-нибудь поможет.
Бретт.
источник
Выгрузить и перезагрузить проект исправил эту проблему.
источник
Иногда, если вы просто очищаете решение, ошибки исчезают, но они могут в конечном итоге вернуться через некоторое время или при следующей сборке.
источник
Эта проблема возникла из-за того, что Visual Studio не распознал один тип, который показывал красный волнистый характер, даже если решение построено успешно. Я заметил в обозревателе решений, что в файле нет стрелки расширения слева, которая показывает классы и свойства при расширении.
Исправление состояло в том, чтобы исключить файл из проекта и сохранить / построить, что вызвало ожидаемую ошибку, а затем включить файл в проект и сохранить и построить.
После выполнения этих шагов Visual Studio снова начала распознавать мой тип. Глядя на diff в git, кажется, что проблема была в том, что окончания строк не
<Compile Include="..." />
совпадали в строке моего файла .csproj.источник
в моем случае vs никогда не сохранял импортированные пространства имен в свойствах проекта> ссылки
когда я попытался добавить / проверить их снова, я не смог, и я выдал ошибку, и когда сохраненный проект потерпел крах. Когда я снова открыл все стандартные импортированные пространства имен (system.data и т. Д.), Все снова были отмечены галочкой, и затем он распознавал все без ошибок.
источник
TL; DR: выполнить чистую переустановку Visual Studio
Потратив несколько часов, я все еще не мог исправить это для Visual Studio 2017. Затем я установил Visual Studio 2019 PREVIEW, и внезапно IntelliSense снова отображает членов STL-классов (чего не происходит в Visual Studio 2017). ).
Итак, я предполагаю, что может быть что-то не так с самой Visual Studio (может быть, что-то в каталоге кеша или вообще что-то на вашем ПК, что не имеет прямого отношения к конкретному решению), что может быть решено с помощью чистой и полной -установка Visual Studio. Я знаю, что это глупое «решение», но в моем случае только новая установка Visual Studio (2019) дала эффект.
Как уже упоминалось, в моем случае затрагивались только классы STL. IntelliSense не будет отображать их участников, что странно. Я подумал, что это может быть связано с предварительно скомпилированными заголовками. Где-то я читал, что STL и проект должны быть на одном диске, и размещение их на одном и том же должно решить проблему. Но ни один из этих маршрутов не привел к успеху.
источник
Я обнаружил, что это может произойти, если указанный проект нацелен на более высокую версию фреймворка, чем проект, который пытается его использовать. Вы можете сказать, если это проблема, перейдя в окно вывода и ища что-то похожее на это:
Решение состоит в том, чтобы изменить целевую структуру того или иного проекта.
источник
Мои симптомы в VS2019 заключались в том, что я буду строить с некоторыми ошибками. Затем я исправлю ошибки, и сборка будет работать, как показано в окне «Вывод». Но окна ошибок все еще показывали старые ошибки. Я мог бы запустить это просто отлично. Закрытие VS2019 и повторное открытие исправили проблему, но ненадолго. Это начало происходить в версии 16.4.3
Это решение, кажется, работает для меня:
Снимите флажок Инструменты-> Опция-> Проекты и решения-> Общие-> Разрешить параллельную инициализацию проекта
Я нашел это исправление в комментариях здесь: https://developercommunity.visualstudio.com/content/problem/483450/vs-2019-intellisense-reports-compile-errors-when-r.html
источник
Попробуйте навести курсор мыши на подчеркнутые элементы. Как правило, он должен сказать вам, в чем проблема. Чтобы увидеть список всех ошибок / предупреждений, перейдите в View => Error List. В нижней части IDE должна открыться таблица со всеми перечисленными ошибками / предупреждениями.
источник