Element FrameworkReference zastąpiony elementem WindowsSdkPackageVersion dla zestawu Windows SDK
Począwszy od platformy .NET 5.0.8 (w tym .NET SDK 5.0.302 i .NET SDK 5.0.205), deweloperzy tworzący aplikacje na Windows nie mogą użyć elementu FrameworkReference
, aby zastąpić swoją wersję pakietu docelowego Windows SDK. Właściwość WindowsSdkPackageVersion
zastępuje tę funkcję.
Notatka
Nie zalecamy zastępowania wersji zestawu Windows SDK, ponieważ pakiety przeznaczone dla zestawu SDK systemu Windows są dołączone do zestawu .NET 5+ SDK. Zamiast tego, aby odwołać się do najnowszego pakietu zestawu Windows SDK, zaktualizuj swoją wersję zestawu .NET SDK.
Wprowadzona wersja
.NET SDK 5.0.302, .NET SDK 5.0.205
Poprzednie zachowanie
Deweloperzy mogą użyć elementu FrameworkReference
, aby zastąpić wersję pakietu windows SDK w aplikacjach platformy .NET 5. Na przykład:
<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>
Nowe zachowanie
Właściwość WindowsSdkPackageVersion
zastępuje zachowanie zastąpienia FrameworkReference
. Na przykład:
<PropertyGroup>
<WindowsSdkPackageVersion>10.0.19041.18</WindowsSdkPackageVersion>
</PropertyGroup>
Kategoria zmiany
Ta zmiana może mieć wpływ na zgodność ze źródłem .
Przyczyna zmiany
Ta zmiana została wprowadzona w celu uproszczenia zachowania zastępowania pakietu dla pakietów zestawu Windows SDK utworzonych przez język C#/WinRT.
Zalecana akcja
Usuń dowolne użycie FrameworkReference
w pliku projektu aplikacji .NET 5+ przy celowaniu w pakiet Windows SDK.
Podczas pracy z Windows App SDK , może być konieczne jawne dodanie właściwości WindowsSdkPackageVersion
, jeśli nie można rozpoznać wymaganej wersji pakietu Windows SDK przez zestaw .NET SDK. Ten problem może wystąpić z powodu różnych mechanizmów wydania dla zestawu SDK aplikacji systemu Windows i zestawu .NET SDK, gdzie zestaw .NET SDK jest dostarczany za pośrednictwem programu Visual Studio. Zobacz szczegóły w tym zgłoszeniu GitHub . Możesz również rozważyć usunięcie właściwości WindowsSdkPackageVersion
, gdy wymagana wersja pakietu Windows SDK zostanie rozwiązana przez pakiet .NET SDK, aby upewnić się, że masz najnowszy pakiet Windows SDK. Dzieje się tak zwykle po udostępnieniu nowej wersji programu Visual Studio i uaktualnieniu do tej wersji.
Interfejsy API, których dotyczy problem
Interfejsy API systemu Windows na platformie .NET 5 i nowszych wersjach, które są dostarczane przez zestaw SDK systemu Windows przeznaczony dla pakietu.