NETSDK1100: Defina a propriedade EnableWindowsTargeting como true

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

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

Para solucionar esse erro, defina a propriedade EnableWindowsTargeting como true. Você pode definir a propriedade no arquivo de projeto ou passar /p:EnableWindowsTargeting=true para um comando .NET CLI como dotnet build. Veja aqui 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 destino (e os pacotes de runtime para builds autossuficientes) para a estrutura de destino atual, sejam necessários ou não, pois podem ser levados por uma referência de estrutura transitiva. Não queríamos enviar os pacotes de destino do Windows com os builds do SDK que não são do Windows, mas também não queríamos que um console básico ou aplicativo ASP.NET Core baixasse automaticamente esses pacotes de destino e runtime na primeira vez compilada. A propriedade EnableWindowsTargeting habilita o download somente com a sua aceitação.

Confira também