Когда NuGet восстанавливает проекты PackageReference, он записывает файл project.assets.json
в промежуточный выходной каталог (по умолчанию obj/
), который содержит не только информацию о пакетах и файлах в этих пакетах, но и сохраняет предупреждения о восстановлении, чтобы можно былопоказать пользователю то же самое предупреждение при восстановлении без операции.Я считаю, что .NET Project System читает это и отображает предупреждения, хранящиеся в файле, в виде символа, который вы видите в обозревателе решений, но я думаю, что он также должен помещать предупреждения в список ошибок.
Итак, вы можете проверить файл obj/project.assets.json
и посмотреть, есть ли в нем какие-либо предупреждения.Я думаю, что они обычно находятся в конце файла.
Другой вариант - перейти в командную строку и запустить msbuild -t:restore
или dotnet restore --verbosity normal
(по умолчанию для dotnet cli установлено минимальное значение).Я был бы удивлен, если бы это не показывало вам предупреждения (при условии, что на самом деле есть предупреждения), но вы могли бы попробовать детальную детализацию, но я ожидаю, что это в основном покажет вам информацию обработки MSBuild.Если вы считаете, что NuGet неправильно отображает предупреждения из-за отсутствия операций, вы можете использовать dotnet restore --force
, который после быстрого просмотра файла целей NuGet будет эквивалентен msbuild -t:restore -p:RestoreForce=true
, или просто удалите project.assets.json
файл и восстановить нормально.