"Serilog" уже имеет зависимость, определенную для "Microsoft.CSharp",
Я пытаюсь установить serilog, и я получаю сообщение об ошибке
PM > Установочный пакет Serilog
Install-Package: "Serilog" уже есть определенная для "Microsoft.CSharp". На линии: 1 char: 1
+ Install-Package Serilog
+ ~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo: NotSpecified: (:) [Install-Package], InvalidOperationException
+ FullyQualifiedErrorId: NuGetCmdletUnhandledException, NuGet.PowerShell.Commands.InstallPackageCommand
Microsoft.CSharp
уже упоминается в моем проекте
Ответы
Ответ 1
Как @Tieson T. сказал, обновите "Диспетчер пакетов Nuget для Visual Studio" из окна Visual Studio > Инструменты > Расширения и обновления > Вкладка "Обновления". Выберите плагин Nuget и обновите его. Затем перезапустите визуальную студию после завершения установки. Я попробовал (Windows 8.1 64bit и Visual Studio 2013 Ultimate), и он работает.
Ответ 2
Чтобы добавить к этому. У меня была аналогичная проблема, но проблема была связана с тем, что наш сервер сборки был основан на TFS 2012 и использует старую версию MSBuild (которую мы не можем обновить в ближайшем будущем). Все построено и работает нормально локально, но когда сервер сборки попытался запустить, мы получили ту же ошибку.
Обходной путь, который я нашел, заключался в том, чтобы войти в папку пакетов решения, найти пакет, имеющий проблему (в моем случае Serilog.2.3.0 и связанные пакеты Sink, которые я установил). Откройте папку "lib", и вы увидите некоторые папки, связанные с различными файлами .NET. Удалите папки netstandard, соответствующие версиям .Net Core.
Недостатком этого является то, что вы должны проверить папки, которые вы так изменяете, чтобы MSBuild не пытался их восстановить.
Ответ 3
Пожалуйста, сделайте 2 шага ниже, это работает для меня или teamcity/jenkins
- Если вы все еще используете Nuget CommandLine 2.8, попробуйте перейти на 3.5.
-
Если вы используете частный сервер Nuget, обновите Serilog.2.3.0.nupkg следующими шагами:
2.1 Обновить файл спецификации Nuget: Удалить ... ...
2.2 Удалите папку lib/netstandard1.0 и lib/netstandard1.0
2.3 Затем переустановите Serilog.2.3.0.nupkg на свой частный сервер Nuget