diff --git a/src/Tasks/Microsoft.NET.Build.Tasks/CreateWindowsSdkKnownFrameworkReferences.cs b/src/Tasks/Microsoft.NET.Build.Tasks/CreateWindowsSdkKnownFrameworkReferences.cs index 94a65656ee68..a3bf6cf5c059 100644 --- a/src/Tasks/Microsoft.NET.Build.Tasks/CreateWindowsSdkKnownFrameworkReferences.cs +++ b/src/Tasks/Microsoft.NET.Build.Tasks/CreateWindowsSdkKnownFrameworkReferences.cs @@ -55,12 +55,24 @@ protected override void ExecuteCore() else { var normalizedTargetFrameworkVersion = ProcessFrameworkReferences.NormalizeVersion(new Version(TargetFrameworkVersion)); + foreach (var supportedWindowsVersion in WindowsSdkSupportedTargetPlatformVersions) { var windowsSdkPackageVersion = supportedWindowsVersion.GetMetadata("WindowsSdkPackageVersion"); if (!string.IsNullOrEmpty(windowsSdkPackageVersion)) { + var NETVersion = supportedWindowsVersion.GetMetadata("NETVersion"); + if (!string.IsNullOrEmpty(NETVersion)) + { + var normalizedNETVersion = ProcessFrameworkReferences.NormalizeVersion(new Version(NETVersion)); + if (normalizedNETVersion == normalizedTargetFrameworkVersion) + { + knownFrameworkReferences.Add(CreateKnownFrameworkReference(windowsSdkPackageVersion, TargetFrameworkVersion, supportedWindowsVersion.ItemSpec)); + } + continue; + } + var minimumNETVersion = supportedWindowsVersion.GetMetadata("MinimumNETVersion"); if (!string.IsNullOrEmpty(minimumNETVersion)) {