Compartilhar via


ToolCommandName não definido para pacotes que não são de ferramentas

A ToolCommandName propriedade não é mais definida automaticamente para todos os projetos durante operações de build ou pacote. Agora ele só está definido quando PackAsTool está definido como true, indicando que o projeto é um pacote de ferramentas do .NET.

Versão introduzida

.NET 10

Comportamento anterior

Anteriormente, a ToolCommandName propriedade sempre era definida durante operações de build ou pacote, independentemente de o projeto ter sido configurado como um pacote de ferramentas.

Novo comportamento

A partir do .NET 10, a ToolCommandName propriedade só é definida quando PackAsTool está definida como true, indicando que o projeto é uma ferramenta .NET.

Tipo de mudança disruptiva

Essa alteração pode afetar a compatibilidade do código-fonte.

Motivo da alteração

A ToolCommandName propriedade não faz sentido para projetos que não são de ferramentas. Defini-lo para todos os projetos era desnecessário e poderia causar confusão sobre a finalidade do projeto.

Se o projeto depender da propriedade ToolCommandName ser definida, você terá duas opções:

  • Defina a propriedade explicitamente no arquivo de projeto:

    <PropertyGroup>
      <ToolCommandName>your-command-name</ToolCommandName>
    </PropertyGroup>
    
  • Converta seu projeto em uma ferramenta .NET definindo PackAsTool como true:

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

APIs afetadas

Nenhum.