Partilhar via


NETSDK1100: Defina a propriedade EnableWindowsTargeting como true

NETSDK1100 indica que você está criando um projeto destinado ao Windows no Linux ou macOS. A mensagem de erro completa é semelhante ao exemplo a seguir:

Para criar um projeto destinado ao Windows neste sistema operacional, defina a EnableWindowsTargeting propriedade como true.

Para resolver esse erro, defina a EnableWindowsTargeting propriedade como true. Você pode defini-lo no arquivo de projeto ou passando /p:EnableWindowsTargeting=true para um comando da CLI do .NET, como dotnet build. Aqui está um exemplo de arquivo de projeto:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net6.0</TargetFramework>
    <EnableWindowsTargeting>true</EnableWindowsTargeting>
  </PropertyGroup>
</Project>

Se quiser aplicar essa configuração a toda a sua solução ou repositório, você pode defini-la em um arquivo Directory.Build.props .

Por padrão, o .NET baixa todos os pacotes de direcionamento (e pacotes de tempo de execução para compilações independentes) para a estrutura de destino atual, sejam eles necessários ou não, porque eles podem ser trazidos por uma referência de estrutura transitiva. Não queríamos enviar os pacotes de segmentação do Windows com as compilações do SDK que não fossem do Windows, mas também não queríamos que um console baunilha ou um aplicativo ASP.NET Core baixasse automaticamente esses pacotes de segmentação e tempo de execução na primeira vez que você criasse. A EnableWindowsTargeting propriedade permite que eles sejam baixados apenas se você optar por participar.

Consulte também