NETSDK1130:无法直接引用 Windows 元数据组件

NETSDK1130 指示你正在尝试直接从以 .NET 5 或更高版本为目标的应用引用 Windows 元数据组件。 完整的错误消息类似于以下示例:

无法引用 <组件名称>。 不支持以 .NET 5 或更高版本为目标时,请直接引用 Windows 元数据组件。

解决此问题的方法是:

  • 删除对 Microsoft.Windows.SDK.Contracts 包的引用。 改为通过项目的 TargetFramework 属性指定要访问的 Windows API 版本。 例如: 。

    <TargetFramework>net5.0-windows10.0.19041.0</TargetFramework>
    
  • 如果你使用的是 .winmd 文件中定义的第三方运行时组件,请添加对 Microsoft.Windows.CsWinRT NuGet 包的引用。 若要了解如何生成 C# 投影,请参阅 C#/WinRT 文档。

有关详细信息,请参阅已从 .NET 中删除对 WinRT 的内置支持在桌面应用中调用 Windows 运行时 API