FrameworkReference substituído pelo WindowsSdkPackageVersion para Windows SDK
A partir do .NET 5.0.8 (que inclui o SDK do .NET 5.0.302 e o SDK do .NET 5.0.205), os desenvolvedores que estão direcionando seus projetos para o Windows não podem usar o item FrameworkReference
para sobrescrever sua versão do pacote de direcionamento do SDK do Windows. A propriedade WindowsSdkPackageVersion
substitui essa funcionalidade.
Nota
Não recomendamos substituir a versão do SDK do Windows, pois os pacotes de destino do SDK do Windows estão incluídos no SDK do .NET 5+. Em vez disso, para fazer referência ao pacote mais recente do SDK do Windows, atualize sua versão do SDK do .NET.
Versão introduzida
SDK do .NET 5.0.302, SDK do .NET 5.0.205
Comportamento anterior
Os desenvolvedores podem usar o item FrameworkReference
para substituir a versão do pacote do SDK do Windows em aplicativos .NET 5. Por exemplo:
<ItemGroup>
<FrameworkReference Update="Microsoft.Windows.SDK.NET.Ref" RuntimeFrameworkVersion="10.0.19041.18" />
<FrameworkReference Update="Microsoft.Windows.SDK.NET.Ref" TargetingPackVersion="10.0.19041.18" />
</ItemGroup>
Novo comportamento
A propriedade WindowsSdkPackageVersion
substitui o comportamento da substituição FrameworkReference
. Por exemplo:
<PropertyGroup>
<WindowsSdkPackageVersion>10.0.19041.18</WindowsSdkPackageVersion>
</PropertyGroup>
Categoria de alteração
Essa alteração pode afetar a compatibilidade da fonte .
Motivo da alteração
Essa alteração foi introduzida para simplificar o comportamento de substituição do pacote para direcionamento dos pacotes do SDK do Windows produzidos pelo C#/WinRT.
Ação recomendada
Remova qualquer uso do FrameworkReference
em seu arquivo de projeto do aplicativo .NET 5+ ao fazer o direcionamento para o SDK do Windows.
Ao trabalhar com o SDK do Aplicativo do Windows, talvez seja necessário adicionar explicitamente a propriedade WindowsSdkPackageVersion
se a versão necessária do pacote do SDK do Windows não puder ser resolvida pelo SDK do .NET. Esse problema pode surgir devido a diferentes mecanismos de versão para o SDK de Aplicativo do Windows e o SDK do .NET, em que o SDK do .NET é enviado por meio do Visual Studio. Veja detalhes neste problema do GitHub . Você também pode considerar a remoção da propriedade WindowsSdkPackageVersion
depois que a versão necessária do pacote do SDK do Windows tiver sido resolvida pelo SDK do .NET, garantindo que você tenha o pacote mais recente do SDK do Windows. Isso normalmente acontece depois que o Visual Studio lança uma nova versão e você atualiza para essa versão.
APIs afetadas
APIs do Windows no .NET 5 e versões posteriores que são fornecidas pelo pacote de direcionamento do SDK do Windows.