So verwalten Sie Paketabhängigkeitsversionen für .NET Core 1.0How to Manage Package Dependency Versions for .NET Core 1.0

Dieser Artikel beschreibt, was Sie über Paketversionen für Ihre .NET Core-Bibliotheken und Apps wissen müssen.This article covers what you need to know about package versions for your .NET Core libraries and apps.

GlossarGlossary

Korrigieren – Das Korrigieren von Abhängigkeiten bedeutet, dass Sie dieselbe Paket-„Familie“ verwenden, die auf NuGet für .NET Core 1.0 erschienen ist.Fix - Fixing dependencies means you are using the same "family" of packages released on NuGet for .NET Core 1.0.

Metapaket – ein NuGet-Paket, dass eine Reihe NuGet-Pakete darstellt.Metapackage - A NuGet package that represents a set of NuGet packages.

Trimmen – Entfernen der Pakete, von denen Sie nicht von einem Metapaket abhängig sind.Trimming - The act of removing the packages you do not depend on from a metapackage. Dies ist nur für Autoren von NuGet-Paketen relevant.This is something relevant for NuGet package authors. Weitere Informationen finden Sie unter Reducing Package Dependencies with project.json (Reduzieren von Paketabhängigkeiten mit project.json).See Reducing Package Dependencies with project.json for more information.

Korrigieren Ihrer Abhängigkeiten zu .NET Core 1.0Fix your dependencies to .NET Core 1.0

Um zuverlässig Pakete wiederherzustellen und zuverlässigen Code zu schreiben, ist es wichtig, dass Sie Ihre Abhängigkeiten zu der Paketversionen korrigieren, die zusammen mit .NET Core 1.0 versendet werden.To reliably restore packages and write reliable code, it's important that you fix your dependencies to the versions of packages shipping alongside .NET Core 1.0. Dies bedeutet, dass jedes Paket über eine einzelne Version ohne zusätzlichen Qualifizierer verfügen muss.This means every package should have a single version with no additional qualifiers.

Beispiele für Pakete, die zu 1.0 korrigiert wurdenExamples of packages fixed to 1.0

"System.Collections":"4.0.11"

"NETStandard.Library":"1.6.0"

"Microsoft.NETCore.App":"1.0.0"

Beispiele für Pakete, die NICHT zu 1.0 korrigiert wurdenExamples of packages that are NOT fixed to 1.0

"Microsoft.NETCore.App":"1.0.0-rc4-00454-00"

"System.Net.Http":"4.1.0-*"

"System.Text.RegularExpressions":"4.0.10-rc3-24021-00"

Warum ist das wichtig?Why does this matter?

Wir garantieren, dass wenn Sie die Abhängigkeiten für welche Schiffe zusammen mit .NET Core 1.0 korrigieren, diese Pakete alle zusammenarbeiten.We guarantee that if you fix your dependencies to what ships alongside .NET Core 1.0, those packages will all work together. Diese Garantie verfällt, wenn Sie Pakete verwenden, die nicht auf diese Weise korrigiert wurden.There is no such guarantee if you use packages which aren't fixed in this way.

SzenarienScenarios

Es gibt zwar eine umfangreiche Liste aller Pakete und deren Versionen, die mit .NET Core 1.0 veröffentlicht wurden, jedoch müssen Sie diese möglicherweise nicht durchgehen, wenn Ihr Code unter bestimmte Szenarios fällt.Although there is a big list of all packages and their versions released with .NET Core 1.0, you may not have to look through it if your code falls under certain scenarios.

Sind Sie ausschließlich von NETStandard.Library abhängig?Are you depending only on NETStandard.Library?

Wenn also, Sie beheben sollten Ihre NETStandard.Library Paket auf Version 1.6.If so, you should fix your NETStandard.Library package to version 1.6. Da es sich um ein geordnetes Metapaket handelt, wird dessen Paketabschluss ebenso auf 1.0 festgelegt.Because this is a curated metapackage, its package closure is also fixed to 1.0.

Sind Sie ausschließlich von Microsoft.NETCore.App abhängig?Are you depending only on Microsoft.NETCore.App?

Wenn also, Sie beheben sollten Ihre Microsoft.NETCore.App Paket auf Version 1.0.0.If so, you should fix your Microsoft.NETCore.App package to version 1.0.0. Da es sich um ein geordnetes Metapaket handelt, wird dessen Paketabschluss ebenso auf 1.0 festgelegt.Because this is a curated metapackage, its package closure is also fixed to 1.0.

Trimmen Sie Ihre NETStandard.Library oder Microsoft.NETCore.App -Metapaketabhängigkeiten?Are you trimming your NETStandard.Library or Microsoft.NETCore.App metapackage dependencies?

Wenn dies der Fall ist, gehen Sie sicher, dass das Metapaket, mit dem Sie beginnen, zu 1.0 korrigiert wurde.If so, you should ensure that the metapackage you start with is fixed to 1.0. Die einzelnen Pakete, von denen Sie nach dem Trimmen abhängig sind, werden auch zu 1.0 korrigiert.The individual packages you depend on after trimming are also fixed to 1.0.

Sind Sie von Paketen außerhalb der NETStandard.Library oder Microsoft.NETCore.App -Metapakete abhängig?Are you depending on packages outside the NETStandard.Library or Microsoft.NETCore.App metapackages?

Wenn dies der Fall ist, müssen Sie Ihre anderen Abhängigkeiten zu 1.0 korrigieren.If so, you need to fix your other dependencies to 1.0. Sehen Sie sich die richtigen Paketversionen und Buildnummern am Ende dieses Artikels an.See the correct package versions and build numbers at the end of this article.

Hinweis zur Verwendung einer Splat-Zeichenfolge (*) bei der VersionskontrolleA note on using a splat string (*) when versioning

Sie haben womöglich ein Muster bei der Versionskontrolle übernommen, bei dem eine Splat-Zeichenfolge (*) wie etwa die folgende verwendet wird: "System.Collections":"4.0.11-*".You may have adopted a versioning pattern which uses a splat (*) string like this: "System.Collections":"4.0.11-*".

Dies sollten Sie nicht tun.You should not do this. Die Verwendung einer Splat-Zeichenfolge könnte zum Wiederherstellen von Paketen aus verschiedenen Builds führen. Einige davon gehen dann möglicherweise über .NET Core 1.0 hinaus.Using the splat string could result in restoring packages from different builds, some of which may be further along than .NET Core 1.0. Dies kann dazu führen, dass einige Pakete inkompatibel werden.This could then result in some packages being incompatible.

Von Metapaketen organisierte Pakete und VersionsnummernPackages and Version Numbers organized by Metapackage

List of all .NET Standard packages and their versions for 1.0 (Liste aller Pakete von .NET Standard und deren Versionen für 1.0).List of all .NET Standard packages and their versions for 1.0.

Liste aller Laufzeitpakete und deren Versionen für 1.0.List of all runtime packages and their versions for 1.0.

Liste aller .NET Core-Anwendungspakete und deren Versionen für 1.0.List of all .NET Core application packages and their versions for 1.0.