微软现在拥有。net Core、。net Framework和Xamarin (Mono)。

这里似乎有很多重叠。这些类型的。net平台有什么不同?什么时候我应该选择在我的项目中使用。net Core,而不是。net Framework或Xamarin?


当前回答

.NET是基于c#语言的生态系统 . net标准是. net生态系统的标准(换句话说,规范)。

. net核心类库是建立在. net标准之上的。 . net标准你只能创建不能独立执行的类库项目,并且应该被其他。net Core或。net Framework可执行项目引用。如果你想实现一个可移植到。net Framework、。net Core和Xamarin的库,选择一个。net标准库

.NET Framework是一个基于。net的框架,支持Windows和Web应用程序

(你可以使可执行项目(如控制台应用程序,或ASP。NET应用程序)使用。NET框架

ASP。NET是一种基于。NET框架的web应用开发技术 . net Core也是一个基于。net的框架。

它是一个新的开源和跨平台框架,可以为包括Windows、Mac和Linux在内的所有操作系统构建应用程序。

Xamarin是一个使用c#开发跨平台移动应用程序(iOS、Android和Windows mobile)的框架

.NET标准的实现支持[蓝色]和完全支持。net标准的最小可行平台(最新:[https://learn.microsoft.com/en-us/dotnet/standard/net-standard#net-implementation-support])

其他回答

Xamarin用于手机应用程序(IOS/Android)。. net Core用于设计可以在Apache和IIS上运行的Web应用程序。

这就是两句话的区别。

[截至2022年2月]

net框架

专有的框架 主要适用于Windows操作系统 4.8版本是它的最终版本。 对它的支持可能会在Windows 10(以及它的其他兄弟服务器)结束

.NET(以前的。net Core)

免费开源 跨平台的 .NET框架的继承者 目前。net 6是LTS版本

Xamarin的

免费开源 用于使用。net和c#构建Android和iOS应用程序 .NET的一部分

.NET Framework - Windows only legacy implementation by Microsoft of .NET. Introduced in 2002, being phased out. .NET 5 (successor to .NET Core 3.1) - modern reimplementation of .NET Framework aimed at replacing it, supports Windows, macOS and Linux. Introduced in 2016, further version might absorb Xamarin Xamarin - Mono with platform bindings to non-windows OS's and APIs and tools tailored to mobile app development (iOS, Android and recently desktop). Introduced in 2012. Mono is a non Microsoft implementation of .NET developed by community and introduced in early 2000s and competing with .NET Framework.

你可以参考这一行- ASP和ASP的区别。NET Core(。NET Core)和ASP。NET Core(。净框架)

Xamarin根本不是一场辩论。当您想要使用c#构建移动(iOS, Android和Windows mobile)应用程序时,Xamarin是您的唯一选择。

. net框架支持Windows和Web应用程序。今天,您可以使用Windows Forms、WPF和UWP在. net Framework中构建Windows应用程序。ASP。NET MVC用于在.NET Framework中构建Web应用程序。

. net Core是一种新的开源和跨平台框架,用于为所有操作系统(包括Windows、Mac和Linux)构建应用程序。仅限NET Core。UWP用于构建Windows 10目标Windows和移动应用程序。ASP。NET Core用于构建基于浏览器的web应用程序。

你想要更多的细节,请参考这个链接 https://blogs.msdn.microsoft.com/dotnet/2016/07/15/net-core-roadmap/ https://learn.microsoft.com/en-us/dotnet/articles/standard/choosing-core-framework-server

. net Core是你现在应该使用的。net的当前版本(更多的特性,修复的bug,等等)

Xamarin是一个提供用c#编写的跨平台移动问题解决方案的平台,所以你不需要在IOS和Android上单独使用Swift。