In meinem Projekt verwendete ich die Klassenbibliothek. Nun habe ich diese Klasse lib als NuGet-Paket erstellt, die class lib entfernt und beim Versuch, das Paket zu installieren, erscheint dieser Fehler: "Ein Element mit demselben Schlüssel wurde bereits hinzugefügt"?Ein Element mit demselben Schlüssel wurde bereits hinzugefügt, während das NuGet-Paket installiert wurde
Antwort
In meinem Fall sah ich diesen Fehler, wenn meine packages.config-Datei doppelte Paket-IDs enthielt, die nicht zulässig ist.
Sie können das folgende PowerShell-Skript verwenden, um alle doppelten Pakete in Ihrer Lösung zu finden. Es sucht rekursiv nach allen packages.config-Dateien und nach der Datei packages.config sucht es nach doppelten Paket-IDs.
$solutionFolder = "C:\MySolution"
$nugetPackageFile = "packages.config"
$files = Get-ChildItem -Path $solutionFolder -Filter $nugetPackageFile -Recurse
foreach ($file in $files)
{
[xml]$xml = Get-Content $file.FullName
$nodes = Select-Xml "/packages/package/@id" $xml
$packageIds = @{}
foreach ($node in $nodes) {
$packageId = $node.Node.'#text'
try
{
$packageIds.Add($packageId, $packageId)
}
Catch [System.ArgumentException]
{
Write-Host "Found duplicate package in " $file.FullName ". Duplicate package: $packageId"
}
}
}
Ich hatte den gleichen Fehler und es wurde behoben, nachdem ich NuGet selbst aktualisiert. Verwenden Sie das Dialogfeld Extras -> Erweiterungen und Updates, um NuGet zu aktualisieren.
Dieser Ratschlag war erstaunlich, VS2015 war für mich irgendwie fehlerhaft, aber die NuGet Install-Package-Probleme, die ich sah, lösten sich auf, nachdem ich ein kleines Paket mit Haushalten in Tools-> Extensions & Updates gemacht hatte. Vielen Dank. – sobelito
Auch wenn Paketduplikate das Problem sind, kann NuGet durch die Aktualisierung von NuGet auf Duplikate korrekt mit Duplikaten umgehen. – Sitric
In meinem Fall hatte ich das neueste Update (2016-09), aber der doppelte Eintrag war der Grund für das poroblem – Gerwald
Ich hatte das gleiche Problem. Es sagte mir immer wieder, dass "ein Artikel mit dem gleichen Schlüssel bereits hinzugefügt wurde", obwohl es nicht in meinen Referenzen und nicht in meiner packages.config
entweder war.
Schließlich konnte ich es beheben, indem ich alle Dateien in Visual Studio zeigte. Im Ordner bin
fand ich dann einen Verweis auf die .dll
, die ich über Nuget installieren wollte. Nach dem Entfernen dieses Problems war das Problem verschwunden.
Vielleicht behebt dies auch für Sie.
Ich hätte gerne eine Fehlersuche an diesem - aber dies behebt das Problem für mich auch! – agAus
Ich hatte auch das gleiche Problem. Ich habe das Paket entfernt und das folgende Element aus der Datei Web.Config entfernt und dann das Paket zurück installiert - Problem gelöst!
section name = "AjaxControlToolkit" type = "AjaxControlToolkit.AjaxControlToolkitConfigSection, AjaxControlToolkit"
Ich habe dieses Problem auf einer Reihe von Gelegenheiten habe, wenn der Code von einem anderen Entwickler aufnimmt. Die von anderen Benutzern erwähnten Probleme sind einige der Dinge, auf die ich gestoßen bin. Also hier ist eine Liste der Dinge, die ich in der Vergangenheit getan haben, diese zu lösen, und auch eine neue, den ich gerade über gekommen sind:
- Restart Visual Studio, NuGet manchmal verweist die falschen Dateien aus irgendeinem Grund (eine sehr häufige Situation und Lösung)
- aktualisiert NuGet-Manager in Extras> Erweiterungen und Updates ... (wie von @ravinsp erwähnt)
- reinigen und Ihre Lösung neu erstellen. Alte Dlls können Dinge durcheinander bringen (wie von @Jules erwähnt)
Suchen Sie nach doppelten Referenzen mit VERSCHIEDENE Versionen in packages.config - obwohl Sie versuchen, ein komplett anderes Paket zu installieren, könnte dieser Fehler durch einen anderen verursacht werden Paketproblem. Ich habe versucht, OctoPack zu installieren, und bekam diesen Fehler, aber es wurde von System.Spatial verursacht. Mein packages.config hatte diese beiden Zeilen in ihm:
<package id="System.Spatial" version="5.6.2" targetFramework="net45" />
<package id="System.Spatial" version="5.6.4" targetFramework="net45" />
Die Option "Nach doppelten Referenzen mit verschiedenen Versionen in packages.config suchen" war die Lösung für mich. Vielen Dank; – Hoku
Wenn man in dem .Net-Core Dilettantismus und.Diese Art von Fehlern tritt nur allzu oft auf.
Für mich verpacke ich normalerweise alle meine Querschneidereien als meine eigenen modularen Pakete. Ich finde, dass, wenn meine Pakete viele andere Abhängigkeiten enthalten, das Hinzufügen der Paketabhängigkeit durch Ändern des project.json-Abhängigkeiten-Abschnitts unglaublich fehlerhaft ist und das oben beschriebene Verhalten ergibt.
Viel zu oft ist die Antwort, alle Abhängigkeiten zu entfernen und das richtige NuGet-Paketverwaltungstool zu verwenden, um die Pakete aus meinem privaten Feed hinzuzufügen, was zu dem Bedingungsdialog für die externen Abhängigkeiten von Microsoft führt.
Es ist nicht ungewöhnlich, die CLI vollständig löschen und neu erstellen zu müssen!
.Net Core und Standard sollte niemals RTM markiert sein. Hoffentlich wird alles besser werden, wenn .Net Standard 2.0 eine Realität wird, aber für den Moment, wenn Sie mit .Net Standard und Core einen Stab aufbauen. Ich weiß genau, wie Sie sich gerade fühlen und hoffentlich hilft Ihnen diese Antwort gut ...
- 1. VS2010 „ein Element mit demselben Schlüssel wurde bereits hinzugefügt“
- 2. Ein Artikel mit dem gleichen Schlüssel wurde bereits hinzugefügt - csvreader.fieldcount
- 3. AzureDiagnostics stürzt mit System.ArgumentException ab: Ein Element mit demselben Schlüssel wurde bereits hinzugefügt
- 4. tfpt unshelve migrate showing "Ein Element mit demselben Schlüssel wurde bereits hinzugefügt."
- 5. Warum bekomme ich diese Ausnahme? {Ein Element mit demselben Schlüssel wurde bereits hinzugefügt. "})
- 6. Warum ist WCF/Mongo Ausnahme werfen: Ein Element mit demselben Schlüssel wurde bereits hinzugefügt
- 7. Ein Element mit demselben Schlüssel wurde bereits hinzugefügt - immer diese Fehlermeldung für SSRS 2008
- 8. Entity Framework - Ein Artikel mit demselben Schlüssel wurde bereits hinzugefügt. - Fehler beim Versuch, Fremdschlüsselbeziehung zu definieren
- 9. Fehler wird angezeigt: Ein Artikel mit demselben Schlüssel wurde bereits hinzugefügt
- 10. Wurde bereits ein Event-Handler hinzugefügt?
- 11. Visual Studio 2015, Nuget und "derselbe Schlüssel wurde bereits hinzugefügt."
- 12. Installation des Nuget-Pakets "Derselbe Schlüssel wurde bereits hinzugefügt."
- 13. XAML - MergedDictionaries werfen XmlParseException "Element wurde bereits hinzugefügt". Warum?
- 14. Fehler erhalten: Ein Artikel mit dem gleichen Schlüssel wurde bereits hinzugefügt - Fehler/Warnung im SSRS-Bericht
- 15. Bei der Verwendung des statischen Wörterbuchs wurde der Fehler "Artikel wurde bereits hinzugefügt" angezeigt. in ASP.NET
- 16. Warnung: Zustand wurde QSTATE bereits hinzugefügt
- 17. Visual Studio Fehler: Ein Artikel mit dem gleichen Schlüssel wurde bereits hinzugefügt
- 18. Element-Variablenpräfix wurde falsch zum Methodennamen hinzugefügt
- 19. Überprüfen Sie, ob ein CALayer bereits als Unterlayer hinzugefügt wurde
- 20. "Ein Element mit dem gleichen Schlüssel wurde bereits hinzugefügt" Fehler beim SSRS beim Versuch, Datensatz zu setzen
- 21. gleichen Schlüssel bereits hinzugefügt
- 22. Wie entfernt man ein Layout, das mit addContentView() hinzugefügt wurde?
- 23. Phantom Grenzen erscheinen, nachdem ein Element der Seite hinzugefügt wurde
- 24. Fehler: Das Attribut "title" wurde bereits definiert
- 25. Ermitteln, ob dem DOM dynamisch ein HTML-Element hinzugefügt wurde
- 26. Erstellen Sie Wörterbuch mit LINQ und vermeiden Sie "Element mit dem gleichen Schlüssel wurde bereits hinzugefügt" Fehler
- 27. Eine Sitzungsfactory wurde bereits mit dem Schlüssel von nhibernate.current_session konfiguriert
- 28. Sitzung wurde bereits gestartet
- 29. Fingerabdruck wurde bereits vergeben gitlab
- 30. C#: Zugriff auf ein Bild, das zum Projektordner hinzugefügt wurde
Ich habe das gleiche Problem, aber nach dem Ausführen dieser Skriptkonsole zeigte nichts. Also ich vermute in meinem Fall gibt es keine Duplikate aber immer noch installieren oder aktualisieren nuget-Pakete zeigen Fehler 'Ein Artikel mit dem gleichen Schlüssel wurde bereits hinzugefügt' –
Danke, das hat nur das gleiche Problem für mich gelöst: D – NRKirby
Dieser ist funktioniert für mich :) –