Das Metapaket „Microsoft.AspNetCore.All“ für ASP.NET Core 2.0Microsoft.AspNetCore.All metapackage for ASP.NET Core 2.0

Das Microsoft.AspNetCore.All-Metapaket ist in ASP.NET Core 3.0 und höher nicht enthalten.The Microsoft.AspNetCore.All metapackage isn't included in ASP.NET Core 3.0 and later. Weitere Informationen finden Sie in diesem GitHub-Issue.For more information, see this GitHub issue.

Hinweis

Es wird empfohlen, für Anwendungen, die ASP.NET Core 2.1 und höher anzielen, das Metapaket Microsoft.AspNetCore.App statt diesem Paket zu verwenden.We recommend applications targeting ASP.NET Core 2.1 and later use the Microsoft.AspNetCore.App metapackage rather than this package. Weitere Informationen finden Sie in diesem Artikel unter Migrieren von Microsoft.AspNetCore.All zu Microsoft.AspNetCore.App.See Migrating from Microsoft.AspNetCore.All to Microsoft.AspNetCore.App in this article.

Für dieses Feature ist ASP.NET Core 2.x für .NET Core 2.x erforderlich.This feature requires ASP.NET Core 2.x targeting .NET Core 2.x.

Microsoft.AspNetCore.All ist ein Metapaket, das auf ein freigegebenes Framework verweist.Microsoft.AspNetCore.All is a metapackage that refers to a shared framework. Ein freigegebenes Framework besteht aus einer Reihe von Assemblys (DLL-Dateien), die sich nicht in den Ordnern der App befinden.A shared framework is a set of assemblies (.dll files) that are not in the app's folders. Das freigegebene Framework muss zum Ausführen der App auf dem Computer installiert sein.The shared framework must be installed on the machine to run the app. Weitere Informationen finden Sie unter The shared framework (Das freigegebene Framework).For more information, see The shared framework.

Das freigegebene Framework, auf das Microsoft.AspNetCore.All verweist, enthält:The shared framework that Microsoft.AspNetCore.All refers to includes:

  • alle unterstützten Pakete des ASP.NET Core-TeamsAll supported packages by the ASP.NET Core team.
  • alle unterstützten Pakete von Entity Framework CoreAll supported packages by the Entity Framework Core.
  • interne und Drittanbieterabhängigkeiten, die von ASP.NET Core und Entity Framework Core verwendet werdenInternal and 3rd-party dependencies used by ASP.NET Core and Entity Framework Core.

In dem Paket Microsoft.AspNetCore.All sind alle Features von ASP.NET Core 2.x und Entity Framework Core 2.x enthalten.All the features of ASP.NET Core 2.x and Entity Framework Core 2.x are included in the Microsoft.AspNetCore.All package. Die Standardprojektvorlagen für ASP.NET Core 2.0 verwenden dieses Paket.The default project templates targeting ASP.NET Core 2.0 use this package.

Die Versionsnummer des Microsoft.AspNetCore.All-Metapakets gibt die erforderlichen Mindestversionen von ASP.NET Core und Entity Framework Core an.The version number of the Microsoft.AspNetCore.All metapackage represents the minimum ASP.NET Core version and Entity Framework Core version.

Die folgende .csproj-Datei verweist auf das Metapaket Microsoft.AspNetCore.All für ASP.NET Core:The following .csproj file references the Microsoft.AspNetCore.All metapackage for ASP.NET Core:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.0</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.9" />
  </ItemGroup>

</Project>

Implizite VersionsverwaltungImplicit versioning

In ASP.NET Core 2.1 oder höher können Sie den Microsoft.AspNetCore.All-Paketverweis ohne Version angeben.In ASP.NET Core 2.1 or later, you can specify the Microsoft.AspNetCore.All package reference without a version. Wenn die Version nicht angegeben wird, wird vom SDK eine implizite Version angegeben (Microsoft.NET.Sdk.Web).When the version isn't specified, an implicit version is specified by the SDK (Microsoft.NET.Sdk.Web). Es wird empfohlen, die vom SDK angegebene implizite Version beizubehalten, statt die Versionsnummer im Paketverweis explizit festzulegen.We recommend relying on the implicit version specified by the SDK and not explicitly setting the version number on the package reference. Wenn Sie Fragen zu dieser Vorgehensweise haben, können Sie einen GitHub-Kommentar unter Discussion for the Microsoft.AspNetCore.App implicit version (Diskussion zur impliziten Version für Microsoft.AspNetCore.App) verfassen.If you have questions about this approach, leave a GitHub comment at the Discussion for the Microsoft.AspNetCore.App implicit version.

Die implizite Version wird auf major.minor.0 festgelegt, wenn es sich um Apps für Mobilgeräte handelt.The implicit version is set to major.minor.0 for portable apps. Der Rollforwardmechanismus des freigegebenen Frameworks führt die App auf der neuesten kompatiblen Version der installierten freigegebenen Frameworks aus.The shared framework roll-forward mechanism runs the app on the latest compatible version among the installed shared frameworks. Stellen Sie sicher, dass die gleiche Version des freigegebenen Frameworks in allen Umgebungen installiert ist, um zu gewährleisten, dass die gleiche Version bei der Entwicklung, beim Testen und in der Produktion verwendet wird.To guarantee the same version is used in development, test, and production, ensure the same version of the shared framework is installed in all environments. Bei unabhängigen Apps wird die implizite Versionsnummer auf die Versionsnummer major.minor.patch des freigegebenen Frameworks festgelegt, das im installierten SDK zusammengefasst ist.For self-contained apps, the implicit version number is set to the major.minor.patch of the shared framework bundled in the installed SDK.

Das Angeben einer Versionsnummer im Microsoft.AspNetCore.All-Paketverweis garantiert nicht, dass diese Version des freigegebenen Frameworks ausgewählt wird.Specifying a version number on the Microsoft.AspNetCore.All package reference does not guarantee that version of the shared framework is chosen. Gehen Sie beispielsweise davon aus, dass „2.1.1“ angegeben, aber „2.1.3“ installiert ist.For example, suppose version "2.1.1" is specified, but "2.1.3" is installed. In diesem Fall verwendet die App Version 2.1.3.In that case, the app will use "2.1.3". Sie können den Rollforward (für „patch“ und/oder „minor“) deaktivieren. Dies wird jedoch nicht empfohlen.Although not recommended, you can disable roll forward (patch and/or minor). Weitere Informationen zum Rollforward des dotnet-Hosts und der Konfiguration seines Verhaltens finden Sie unter dotnet host roll forward (Rollforward des dotnet-Hosts).For more information regarding dotnet host roll-forward and how to configure its behavior, see dotnet host roll forward.

Das SDK des Projekts muss in der Projektdatei auf Microsoft.NET.Sdk.Web festgelegt werden, damit die implizite Versionsverwaltung von Microsoft.AspNetCore.All verwendet werden kann.The project's SDK must be set to Microsoft.NET.Sdk.Web in the project file to use the implicit version of Microsoft.AspNetCore.All. Wenn das SDK Microsoft.NET.Sdk festgelegt wird (<Project Sdk="Microsoft.NET.Sdk"> ganz oben in der Projektdatei), wird die folgende Warnung angezeigt:When the Microsoft.NET.Sdk SDK is specified (<Project Sdk="Microsoft.NET.Sdk"> at the top of the project file), the following warning is generated:

Warnung NU1604: Projektabhängigkeit Microsoft.AspNetCore.App enthält keine inklusive Untergrenze. Schließen Sie eine Untergrenze in die Abhängigkeitsversion ein, um konsistente Wiederherstellungsergebnisse zu erzielen.)Warning NU1604: Project dependency Microsoft.AspNetCore.All does not contain an inclusive lower bound. Include a lower bound in the dependency version to ensure consistent restore results.

Dies ist ein bekanntes Problem mit dem .NET Core 2.1 SDK und wird im .NET Core SDK 2.2 behoben.This is a known issue with the .NET Core 2.1 SDK and will be fixed in the .NET Core 2.2 SDK.

Migrieren von Microsoft.AspNetCore.All zu Microsoft.AspNetCore.AppMigrating from Microsoft.AspNetCore.All to Microsoft.AspNetCore.App

Folgende Pakete sind in Microsoft.AspNetCore.All, aber nicht in Microsoft.AspNetCore.App enthalten.The following packages are included in Microsoft.AspNetCore.All but not the Microsoft.AspNetCore.App package.

  • Microsoft.AspNetCore.ApplicationInsights.HostingStartup
  • Microsoft.AspNetCore.AzureAppServices.HostingStartup
  • Microsoft.AspNetCore.AzureAppServicesIntegration
  • Microsoft.AspNetCore.DataProtection.AzureKeyVault
  • Microsoft.AspNetCore.DataProtection.AzureStorage
  • Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv
  • Microsoft.AspNetCore.SignalR.Redis
  • Microsoft.Data.Sqlite
  • Microsoft.Data.Sqlite.Core
  • Microsoft.EntityFrameworkCore.Sqlite
  • Microsoft.EntityFrameworkCore.Sqlite.Core
  • Microsoft.Extensions.Caching.Redis
  • Microsoft.Extensions.Configuration.AzureKeyVault
  • Microsoft.Extensions.Logging.AzureAppServices
  • Microsoft.VisualStudio.Web.BrowserLink

Wenn Sie von Microsoft.AspNetCore.All zu Microsoft.AspNetCore.App migrieren möchten und Ihre App APIs aus den oben aufgeführten Paketen verwendet, fügen Sie in Ihrem Projekt Verweise auf diese Pakete hinzu.To move from Microsoft.AspNetCore.All to Microsoft.AspNetCore.App, if your app uses any APIs from the above packages, or packages brought in by those packages, add references to those packages in your project.

Alle Abhängigkeiten der vorangehenden Pakete, die keine Abhängigkeiten von Microsoft.AspNetCore.App sind, sind nicht implizit enthalten.Any dependencies of the preceding packages that otherwise aren't dependencies of Microsoft.AspNetCore.App are not included implicitly. Zum Beispiel:For example:

  • StackExchange.Redis als Abhängigkeit von Microsoft.Extensions.Caching.RedisStackExchange.Redis as a dependency of Microsoft.Extensions.Caching.Redis
  • Microsoft.ApplicationInsights als Abhängigkeit von Microsoft.AspNetCore.ApplicationInsights.HostingStartupMicrosoft.ApplicationInsights as a dependency of Microsoft.AspNetCore.ApplicationInsights.HostingStartup

Aktualisieren von ASP.NET Core 2.1Update ASP.NET Core 2.1

Wir empfehlen die Migration zum Metapaket Microsoft.AspNetCore.App für 2.1 oder höher.We recommend migrating to the Microsoft.AspNetCore.App metapackage for 2.1 and later. Wenn Sie das Microsoft.AspNetCore.All-Metapaket weiterhin verwenden und sicherstellen möchten, dass die neueste Patchversion bereitgestellt wird, gehen Sie folgendermaßen vor:To keep using the Microsoft.AspNetCore.All metapackage and ensure the latest patch version is deployed:

  • Auf Entwicklungscomputern und Buildservern: Installieren Sie das neueste .NET Core SDK.On development machines and build servers: Install the latest .NET Core SDK.
  • Auf Bereitstellungsservern: Installieren Sie die neueste .NET Core Runtime.On deployment servers: Install the latest .NET Core runtime. Für Ihre App wird bei einem Neustart der Anwendungen ein Rollforward auf die neueste installierte Version ausgeführt.Your app will roll forward to the latest installed version on an application restart.