目前我有一个 project.json 文件,其中列出了:

"frameworks": {
        "net40": {
        },
        "net45": {
        },
        "dnx451": {
        },
        "dnxcore5": {
        },
        "netcore5": {

        }
    }

然而,这是有效的吗?
dnx451、dnxcore5 和 netcore5 之间有什么区别?

最佳答案

这是有效的吗?

所有这些框架在理论上都是有效的。然而,并不是所有的都有效。

这些也称为“名字对象”,它们将针对 NuGet 包进行验证以检索正确的程序集。如果 NuGet 包找不到匹配的名字对象,它就不会创建正确的引用。

此外,子依赖项也必须支持名字对象,否则它将无法加载引用。
dnx451dnxcore5netcore5 有什么区别?
dnx451 引用了完整的桌面框架,其中包括 WinForms、System.Web、WPF 和其他所有内容。
dnxcore5 是新的 .NET 框架,它是跨平台的,兼容 Linux/OSX,当然还有 Windows。
netcore5dnxcore5 相同,但仅来自更早的测试版。

额外推荐阅读

如果您想了解更多关于 Core Framework (CoreFX) 的信息,我建议您阅读有关 .NET Standard Platform 的内容,它可以很好地指明在何处以及由什么支持的内容。

10-08 14:04