got warning NETSDK1206 when I update .Net7 to .Net 8.0.100 SDK.

copin clair 51 Reputation points
2023-12-12T04:27:06.77+00:00

When I upgrade my project from .Net 7 to .Net 8.0.100 I got some warnings saying ,"C:\Program Files\dotnet\sdk\8.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.targets(284,5): warning NETSDK1206: Found version-specific or distribution-specific runtime identifier(s): win10-arm, win10-arm64, win10-x64, win10-x86. Affected libraries: Microsoft.WindowsAppSDK, tinyspline. In .NET 8.0 and higher, assets for version-specific and distribution-specific runtime identifiers will not be found by default. See https://aka.ms/dotnet/rid-usage for details."
How can I fix it?
All my projects I had set their RID like as "<RuntimeIdentifiers>win-x86;win-x64;win-arm64</RuntimeIdentifiers>".

.NET Runtime
.NET Runtime
.NET: Microsoft Technologies based on the .NET software framework.Runtime: An environment required to run apps that aren't compiled to machine language.
1,125 questions
0 comments No comments
{count} vote

Accepted answer
  1. Jiachen Li-MSFT 26,671 Reputation points Microsoft Vendor
    2023-12-14T03:32:28.99+00:00

    Hi @copin clair ,
    The warning you're encountering indicates that there are version-specific or distribution-specific Runtime Identifiers (RIDs) specified for certain libraries in your project, and these identifiers might not be found by default in .NET 8.0 and higher. To resolve this issue, you need to adjust the RIDs used by the affected libraries.

    Try the following steps:

    1. Identify affected libraries: The warning specifies Microsoft.WindowsAppSDK and tinyspline as the affected libraries.
    2. Check library documentation: Refer to the documentation or release notes of Microsoft.WindowsAppSDK and tinyspline for their supported RIDs or any updates related to .NET 8.0 and higher.
    3. Update the RIDs: Replace the version-specific or distribution-specific RIDs (win10-arm, win10-arm64, win10-x64, win10-x86, etc.) with the compatible or recommended RIDs provided by the libraries for .NET 8.0 and higher.
    4. Verify project configurations: Ensure that your projects also use compatible RIDs for their respective platforms (win-x86, win-x64, win-arm64, etc.) in the <RuntimeIdentifiers> tag.
    5. Update project RIDs: If necessary, update the project settings with the compatible RIDs for .NET 8.0 and higher, adhering to the guidelines provided by Microsoft for RID usage.
    6. Dependency compatibility: Ensure that the versions of Microsoft.WindowsAppSDK, tinyspline, and any other dependencies in your project are compatible with .NET 8.0.
    7. Update dependencies: If newer versions of these libraries that support .NET 8.0 are available, consider updating to those versions.

    Best Regards.

    Jiachen Li


    If the answer is helpful, please click "Accept Answer" and upvote it.

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.

    1 person found this answer helpful.

0 additional answers

Sort by: Most helpful