Visual Studio - проект отображается как "Разные файлы"
Это странно. У меня есть проект библиотеки классов С# в моем решении. Если я открою файл .cs
в этом проекте, раскрывающийся список Project
в редакторе кода показывает, что он принадлежит к "Разным файлам".
![Screenshot of the problem]()
Другие симптомы: если я перехожу к свойствам проекта и смотрю Assembly Information
, все значения пустые, несмотря на значения, существующие в файле AssemblyInfo.cs
.
Оба они раздражают, но проблема в том, что
- Я не получаю intellisense для любых файлов в проекте
- Кажется, я не могу пройти через него в отладчике (он говорит мне, что файлы не принадлежат к решению и поэтому не могут быть отлажены).
![Assembly info is blank]()
Я пробовал:
- Комбинирование через файл
.csproj
и сравнение с другими в решении (без радости)
- Повторное создание файла
.csproj
и перезапись старого (работавшего до тех пор, пока я не объединил ветку в туловище, затем проблема снова появилась)
- Наклонение головы на клавиатуре (головная боль)
Google ничего не обнаружил. Есть ли у кого-нибудь идеи относительно того, что здесь происходит?
Ответы
Ответ 1
Как я решил свою проблему:
- Перейдите к файлу, который отображается как Разные файлы внутри Solution Explorer.
- Щелкните правой кнопкой мыши файл и выберите "Исключить из проекта".
- Щелкните правой кнопкой мыши свой проект/папку, в которой находился файл, нажмите "Добавить существующий элемент" и добавьте только что удаленный файл обратно в проект.
Ответ 2
У меня эта проблема и в VS 2017.
Я обнаружил, что эти файлы miscellaneous
являются файлами, добавленными вне VS. Поэтому, если вы переключитесь на другую ветвь git (где есть новые файлы) без закрытия VS и нажмите кнопку "Обновить" в VS (когда он проверяет, что файлы sln/csproj изменены вне VS), то эти новые файлы не являются правильно проанализирован VS и "отмечен" как miscellaneous
.
Как обходной путь я закрываю VS, удаляю папку .vs
с диска и снова запускаю VS. После того, как VS будет полностью инициализирован, эти новые файлы будут успешно проанализированы.
Обратите внимание, что этот способ очищает пользовательские настройки, такие как StartUp Project
и т.д.
Ответ 3
У меня была точно такая же проблема, и оказалось, что некоторые из файлов XAML в моем проекте были настроены для создания с использованием действия "XamlAppDef" (т.е. построили его как рабочий процесс XAML), и когда я вернул его к ' Compile ', выпадающий список Project мгновенно перешел из (Разное) в правильный проект.
Ответ 4
Вот решение:
- Перейдите в Параметры в меню Сервис, а затем выберите Документы в Среда node. (Если документы не отображаются в списке, выберите "Показать все настройки" в диалоговом окне "Параметры".)
- Поставьте галочку на " Разные файлы в обозревателе решений" и нажмите ОК.
(Этот параметр отображает "Разное файлы" node в обозревателе решений. Другие файлы - это файлы, которые не связаны с проектом или решением, но могут отображаться в обозревателе решений для вашего удобства, если вы отметите эту опцию.)
- Найдите файл в обозревателе решений в разделе "Разное файлы" . Затем перетащите свой файл туда, где он должен принадлежать, и вуаля! Это будет скопировать файл туда, где вы его удаляете. Теперь вы можете безопасно удалить старый файл в папке "Разное файлы" , если вы этого хотите.
Ответ 5
В VS2017 я смог исправить эту проблему, удалив папку *.vs и файлы *.user
Ответ 6
Из-за TypeScript убедитесь, что ваш файл соответствует шаблону, указанному в файле tsconfig.json в разделе "Включить". Если файл .ts не был добавлен tsconfig, тогда intellicense покажет его как Разное.
Ответ 7
Попробовав все остальные предложенные решения, у меня сработало следующее:
- Редактирование файла
.gitattributes
. - добавление
*.xproj text eol=crlf
Так что мои проекты VS2015 xproj в стиле .NET Core/Standard снова заработали.
Оказалось, что мой git
ставил EOL в стиле UNIX, что сбивало с толку VS.
Ответ 8
может быть, вы можете только открыть проект ошибки в другом решении и добавить проект, который вам нужен, в новом решении
Ответ 9
Проверьте эту ссылку https://www.reddit.com/r/VisualStudio/comments/b8vbj8/help_netf461_project_opened_in_vs2019_all_files/
- Щелкните правой кнопкой мыши "Ссылки" в обозревателе решений.
- Выберите "Управление пакетами NuGet"
- Под вкладкой "Установлено" ищите "Microsoft.Net.Compilers"
- Выберите "Microsoft.Net.Compilers"
-
В боковом окне "Microsoft.Net.Compilers" нажмите кнопку обновления
- VS2015 совместим с .NET Compiler 1.xx
- VS2017 совместим с .NET Compiler 2.xx
- VS2019 совместим с .NET Compiler 3.xx
Итак, просто обновите Microsoft.Net.Compilers в соответствии с вашей версией
Ответ 10
Если он не отображается в обозревателе решений, попробуйте нажать кнопку "Показать все файлы" в верхней части обозревателя решений. Если файлы становятся видимыми и находятся под проектом, вы ожидаете, что они будут в нем, но в файле по-прежнему указано "Разное" в качестве проекта, затем щелкните файлы правой кнопкой мыши и выберите "Включить в проект". В противном случае попробуйте перетащить их в нужный проект.
Я только что затронул эту проблему в VS 2017, и это то, что сработало для меня.
Ответ 11
Если это все еще проблема, вы можете проверить свои пакеты Nuget. По умолчанию в VS 2017 некоторые проекты будут включать ссылки на различные библиотеки компиляторов от Microsoft. Это почти наверняка не нужно. В моем случае их удаление немедленно решило проблему с другими файлами.
Я не могу вспомнить, какие именно Nugets, но я почти уверен, что один из них - Microsoft.CodeDom.Providers.DotNetCompilerPlatform
Ответ 12
Каким-то образом я решил эту проблему, перейдя в свойства (щелкните правой кнопкой мыши файл и выберите Свойства). Действие Build было установлено в Content. Просто измените его на Compile и проблема решена.