Se si utilizza VS2015 Update 1 o successivo, è possibile convert your project to use project.json
to fix this.
In breve:
- Run
Uninstall-Package <package name> -Force -RemoveDependencies
per tutti i pacchetti. Potresti voler copiare e incollare il tuo packages.config
nel blocco note prima di farlo.
- Eliminare
packages.config
dal progetto, salvare il progetto, scaricare
- Modificare il file di progetto e rimuovere:
- Qualsiasi riferimento
.props
file in alto relativa a Nuget
- Qualsiasi
<Reference>
elementi che fanno riferimento a un pacchetto
- I file nella parte inferiore che riferimento nuget - di solito inizia con:
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
- Se i pacchetti contengono analizzatori Roslyn, ma ke sicuro di rimuoverli anche tu.
- Salvare il file e relod il progetto
Aggiungi project.json
con:
{
"dependencies": {
},
"frameworks": {
".NETFramework,Version=v4.6.1": {}
},
"runtimes": {
"win": {}
}
}
Infine aggiungere i pacchetti di nuovo, sia a mano sotto dependencies
o utilizzando Install-Package
o con l'interfaccia utente NuGet in VS.
Ho anche dovuto rimuovere tutti i pacchetti Microsoft.Bcl.*
dai miei progetti perché cercano esplicitamente un file packages.config
.
EDIT:. Questo (rimuovendo i Microsoft.Bcl.*
pacchetti vi darà un errore di compilazione, anche se il progetto sarà costruire bene, perché il file Microsoft.Bcl.Build
.targets
aggiunge sarà ancora cercare packages.config
Per sopprimere questo, modificare il file di progetto e aggiungere:.
<SkipValidatePackageReferences>true</SkipValidatePackageReferences>
Questo deve andare al primo <PropertyGroup>
che non ha impostato un attributo Condition
Se non c'è uno, basta aggiungere un altro in alto, come:
<PropertyGroup>
<SkipValidatePackageReferences>true</SkipValidatePackageReferences>
</PropertyGroup>
Eventuali duplicati di [NuGet non ottenere pacchetti mancanti] (http://stackoverflow.com/ques tions/17797052/nuget-not-getting-missing-packages) –