NETSDK1100: impostare la proprietà EnableWindowsTargeting su true
NETSDK1100 indica che si sta creando un progetto destinato a Windows in Linux o macOS. Il messaggio di errore completo è simile all'esempio seguente:
Per compilare un progetto destinato a Windows in questo sistema operativo, impostare la proprietà
EnableWindowsTargeting
su true.
Per risolvere questo errore, impostare la proprietà EnableWindowsTargeting
su true. È possibile impostarlo nel file di progetto o passando /p:EnableWindowsTargeting=true
a un comando dell'interfaccia della riga di comando .NET, ad esempio dotnet build
. Segue un esempio di file di progetto:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<EnableWindowsTargeting>true</EnableWindowsTargeting>
</PropertyGroup>
</Project>
Se si vuole applicare questa impostazione a tutta la soluzione o al repository, è possibile impostarla in un file Directory.Build.props.
Per impostazione predefinita, .NET scarica tutti i pacchetti di destinazione (e i pacchetti di runtime per le compilazioni autonome) per il framework di destinazione corrente, indipendentemente dal fatto che siano necessari o meno, perché potrebbero essere inseriti da un riferimento transitivo al framework. Non volevamo spedire i pacchetti di destinazione di Windows con le build non di Windows SDK, ma non volevamo nemmeno che una console Vanilla o un'app ASP.NET Core scaricasse automaticamente questi pacchetti di destinazione e runtime alla prima compilazione. La proprietà EnableWindowsTargeting
consente il download solo previo consenso esplicito.
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: