Share via


針對 Windows SDK 以 WindowsSdkPackageVersion 取代 FrameworkReference

自 .NET 5.0.8 (包含 .NET SDK 5.0.302 和 .NET SDK 5.0.205) 起,以 Windows 為目標的開發人員無法再使用 FrameworkReference 項目來覆寫 Windows SDK 目標套件的版本。 WindowsSdkPackageVersion 屬性會取代這項功能。

注意

我們不建議您覆寫 Windows SDK 版本,原因是 .NET SDK 5 以上皆內含 Windows SDK 目標套件。 若要參考最新的 Windows SDK 套件,請改為更新您的 .NET SDK 版本。

導入的版本

.NET SDK 5.0.302、.NET SDK 5.0.205

先前的行為

開發人員可以使用 FrameworkReference 項目覆寫 .NET 5 應用程式中的 Windows SDK 套件版本。 例如:

<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>

新的行為

WindowsSdkPackageVersion 屬性會取代 FrameworkReference 的行為。 例如:

<PropertyGroup>
  <WindowsSdkPackageVersion>10.0.19041.18</WindowsSdkPackageVersion>
</PropertyGroup>

變更類別

這項變更可能會影響「來源相容性

變更原因

採用這項變更,是為了簡化將 C#/WinRT 所產生的 Windows SDK 套件做為目標時的套件覆寫行為。

將 Windows SDK 做為目標時,請不要在 .NET 5 以上的應用程式中使用 FrameworkReference

受影響的 API

Windows SDK 目標套件所提供之 .NET 5 以上版本中的 Windows API。