Freigeben über


Identifizieren des Projektformats

NuGet funktioniert mit allen .NET-Projekten. Das Projektformat (SDK-Format oder Nicht-SDK-Format) bestimmt jedoch einige der Tools und Methoden, die Sie zum Verwenden und Erstellen von NuGet-Paketen verwenden müssen. SDK-Stilprojekte verwenden das SDK-Attribut. Es ist wichtig, den Projekttyp zu identifizieren, da die Methoden und Tools, die Sie zum Verwenden und Erstellen von NuGet-Paketen verwenden, vom Projektformat abhängig sind. Bei Projekten im Nicht-SDK-Stil hängen die Methoden und Tools auch davon ab, ob das Projekt in PackageReference das Format migriert wurde oder nicht.

Ob ihr Projekt SDK-Format aufweist oder nicht, hängt von der Methode ab, die zum Erstellen des Projekts verwendet wird. Die folgende Tabelle zeigt das Standardprojektformat und das zugehörige CLI-Tool für Ihr Projekt, wenn Sie es mit Visual Studio 2017 und höheren Versionen erstellen.

Project Standardprojektformat CLI-Tool Hinweise
.NET Standard SDK-Stil dotnet SDK Projekte, die vor Visual Studio 2017 erstellt wurden, sind nicht im SDK-Stil. Verwenden Sie nuget.exe CLI.
.NET Core SDK-Stil dotnet SDK Projekte, die vor Visual Studio 2017 erstellt wurden, sind nicht im SDK-Stil. Verwenden Sie nuget.exe CLI.
.NET Framework Nicht-SDK-Stil nuget.exe CLI .NET Framework-Projekte, die mit anderen Methoden erstellt wurden, können SDK-Formatprojekte sein. Verwenden Sie stattdessen dotnet SDK.
Migriertes .NET-Projekt Nicht-SDK-Stil Verwenden Sie zum Erstellen von Paketen msbuild -t:pack , um Pakete zu erstellen. Es wird empfohlen, msbuild -t:pack zum Erstellen von Paketen zu verwenden. Verwenden Sie andernfalls das dotnet SDK. Migrierte Projekte sind keine PROJEKTE im SDK-Stil.

Überprüfen des Projektformats

Wenn Sie nicht sicher sind, ob es sich bei dem Projekt um ein SDK-Format handelt oder nicht, suchen Sie im Element in der <Project> Projektdatei nach dem SDK-Attribut (für C#, dies ist die Datei *.csproj). Wenn es vorhanden ist, ist das Projekt ein SDK-Formatprojekt.

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

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <Authors>authorname</Authors>
    <PackageId>mypackageid</PackageId>
    <Company>mycompanyname</Company>
  </PropertyGroup>

</Project>

Überprüfen des Projektformats in Visual Studio

Wenn Sie in Visual Studio arbeiten, können Sie das Projektformat schnell mit einer der folgenden Methoden überprüfen:

  • Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und wählen Sie "Myprojectname.csproj bearbeiten" aus.

    Diese Option ist nur ab Visual Studio 2017 für Projekte verfügbar, die das SDK-Stil-Attribut verwenden. Verwenden Sie andernfalls die andere Methode.

    Bearbeiten der Projektdatei

    Ein SDK-Formatprojekt zeigt das SDK-Attribut in der Projektdatei an.

  • Wählen Sie im Menü "Projekt" die Option "Projekt entladen" aus (oder klicken Sie mit der rechten Maustaste auf das Projekt, und wählen Sie "Projekt entladen" aus).

    Dieses Projekt enthält nicht das SDK-Attribut in der Projektdatei. Es handelt sich nicht um ein SDK-Projekt.

    Entladen des Projekts

    Klicken Sie dann mit der rechten Maustaste auf das entladene Projekt, und wählen Sie "Myprojectname.csproj bearbeiten" aus.

Siehe auch