Freigeben über


ToolCommandName nicht für Nicht-Toolpakete festgelegt

Die ToolCommandName Eigenschaft wird bei Build- oder Paketvorgängen nicht mehr automatisch für alle Projekte festgelegt. Sie wird jetzt nur festgelegt, wenn PackAsTool auf true gesetzt ist, was angibt, dass es sich bei dem Projekt um ein .NET-Toolpaket handelt.

Eingeführt in Version

.NET 10

Vorheriges Verhalten

Zuvor wurde die ToolCommandName Eigenschaft bei Build- oder Packvorgängen immer festgelegt, unabhängig davon, ob das Projekt als Toolpaket konfiguriert wurde.

Neues Verhalten

Ab .NET 10 wird die ToolCommandName-Eigenschaft nur festgelegt, wenn PackAsTool auf true gesetzt ist, wodurch angezeigt wird, dass es sich bei dem Projekt um ein .NET-Tool handelt.

Art der einschneidenden Änderung

Diese Änderung kann sich auf die Quellkompatibilität auswirken.

Grund für Änderung

Die ToolCommandName Eigenschaft ist für Nicht-Tool-Projekte nicht sinnvoll. Die Festlegung für alle Projekte war unnötig und könnte zu Verwirrung über den Zweck des Projekts führen.

Wenn Ihr Projekt auf die ToolCommandName festgelegte Eigenschaft angewiesen ist, haben Sie zwei Optionen:

  • Legen Sie die Eigenschaft explizit in der Projektdatei fest:

    <PropertyGroup>
      <ToolCommandName>your-command-name</ToolCommandName>
    </PropertyGroup>
    
  • Konvertieren Sie Ihr Projekt in ein .NET-Tool, indem Sie folgendes festlegen PackAsTooltrue:

    <PropertyGroup>
      <PackAsTool>true</PackAsTool>
    </PropertyGroup>
    

Betroffene APIs

Keiner.