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.