【发布时间】:2021-09-20 18:31:03
【问题描述】:
.NET Framework 仅支持 Windows 平台。 .NET 核心支持 Windows、Linux 和 Mac OS。 .NET Core 将不支持 andriod 和 ios。
.NET 5 支持 Windows、MAC OS、LINUX、Anroid 和 IOS。
以上几点我都正确吗?
标签: c#
.NET Framework 仅支持 Windows 平台。 .NET 核心支持 Windows、Linux 和 Mac OS。 .NET Core 将不支持 andriod 和 ios。
.NET 5 支持 Windows、MAC OS、LINUX、Anroid 和 IOS。
以上几点我都正确吗?
标签: c#
这不是一个准确的答案,但对于一个容易被官方和令人筋疲力尽的信息感到困惑和不知所措的新手来说是件好事。
有两个并行平台。
.NET 5 会将这两者合并为一个。所以 .NET 5 是 .NET Core 的下一代(某种意义上)。但它也不是更多。至于支持的操作系统,你没有错,但你也不太对。这不完全是一个是/否的问题。它可能很好地支持某些操作系统的某些功能,并且与您的需要相对应。这是一片丛林,它在不断变化。
现在,您可能有具体的考虑,例如现在应该学习哪些。在这个问题上 - 你应该使用 .NET 5。(除非有特定原因,例如工作要求,你可以使用当前版本的 .NET Core 3.x 或 .NET Framework 4.x,它是它当前的 dito)。
您可能还想平台之间的差异有多大。对此,有两个答案。对我来说,这是巨大的——基本上是白天和黑夜。对你来说,假设你的问题建议的熟练程度,它可以忽略不计 - 即使它让你发疯,你也不会注意到。这是一件好事。不能选错。
另一个问题可能是您是否能够按照要求的方式部署您的产品。你会。但是,选择另一个框架可能会更容易。它也可能使这更难。底线是,您只有到了那里才知道,但通用框架永远不会阻止您。
【讨论】:
.NET 5 是一个组合平台,包括以下库和框架:
对于基于跨平台的开发,.NET Core 框架版本 1.0 到 3.1 涵盖了 Web 应用程序、Windows 窗体应用程序、基于服务器的应用程序、移动应用程序和云托管应用程序的开发。
ASP.NET Core 是 ASP.NET 的开源版本,可在 macOS、Linux 和 Windows 上运行。 .NET Core 中的版本为 1.1 到 3.1,.NET 5 的版本为 5。
https://dotnet.microsoft.com/learn/aspnet/what-is-aspnet-core
ASP.NET 是 ASP.NET 的 Windows 版本,该平台允许开发托管在 Windows 服务器上的 Web 应用程序。版本从 1.x 到 4.x。
https://dotnet.microsoft.com/apps/aspnet
Xamarin 平台(不是 .NET Core 的一部分)允许跨平台 Android 和 IOS 移动开发,并作为 .NET 5 平台的一部分。
https://dotnet.microsoft.com/apps/xamarin
对于基于 Windows 平台的开发,.NET Framework 1.0 到 4.8 版涵盖了 Windows 客户端和服务器应用程序的开发。
https://docs.microsoft.com/en-us/dotnet/framework/get-started/overview
由于将某些 .NET Core 框架重命名为 .NET 5 框架时存在混淆,微软在其某些技术中保留了“Core”的名称。
例如,ASP.NET Core 3.1 使用新的 ASP.NET Core 5 框架保留其 Core 名称,而不是将其与许多开发人员仍在使用的 ASP.NET 5 或 ASP.NET MVC 5 混淆。
另一个示例是基于 .NET Framework 的 ORM 提供程序 Entity Framework 5 和基于 .NET Core 的 ORM 提供程序 Entity Framework Core 5,两者都保留了名称以避免在 .NET 5 平台内混淆。
根据您的应用程序开发目标(跨平台、Windows、移动、服务器等),您可以从 .NET Core 或 .NET 5(及更高版本)内的 .NET Framework 兼容包中选择项目模板和库这将实现您的目标。
【讨论】: