1) Почему Visual Studio строит это без ошибок?Почему это работает с vs, но не с cli?
Поскольку у нас нет вашего проекта / решения, мы не могли выяснить причину, по которой Visual Studio строится без ошибок.Но если вы решите последние две проблемы, вы не будете смущены этой проблемой.
2) Почему Nuget устанавливает неправильную версию?
NuGet не устанавливает проектв файл проекта при использовании командной строки nuget restore
.Эта командная строка просто загружает и устанавливает любые пакеты, отсутствующие в папке пакетов , поэтому она не меняет версию пакета nuget в file.csproj
при использовании этой командной строки, она просто загружает пакет Microsoft.Owin.Security.OAuth.3.0.1
иустановите его в папку \packages
на основе файла nuget.config
, он не будет проверять HintPath
в файле проекта.Это также причина, по которой вы можете увидеть пакет nuget в корневом каталоге папки вашего проекта.
Однако путь и версия неверны в file.csproj
( Не могу знать причину,может быть случайно изменен вручную или по другим причинам ), это должно быть:
<HintPath>..\packages\Microsoft.Owin.Security.OAuth.3.0.1\lib\net45\Microsoft.Owin.Security.OAuth.dll</HintPath>
Single ..\
и версия 3.0.1.
Итак, чтобы решить эту проблему, мы должны переустановить пакет nuget вместо его восстановления.Вы можете удалить его и переустановить эти пакеты.
3) Как я могу экспортировать из конфигурации для Nuget для установки всех пакетов?
Существует packages.config
файл в вашем проекте, вы можете установить все пакеты с помощью диспетчера пакетов в Visual Studio, но вы не смогли установить все пакеты с помощью nuget CLI.Поскольку консоль диспетчера пакетов предоставляет доступ к объектам Visual Studio.
Проверьте другой поток для получения дополнительной информации.
Надеюсь, это поможет.