因为.NET实际上是微软保持Windows系统市场占有率的重要手段,自从.NET推广开了以后,只要部署.NET应用就一定要部署Windows系统,无形中支持了Windows系统,所以微软迟迟不肯推出.NET的Linux版本。虽然现在微软调整了对Linux的态度,开放了.NET的源代码,但是它仍然不会主动推广到Linux上。
成本问题,比如重新开发一套基于Linux的框架、IIS以及VS等。推广问题,Linux有很多其他优秀的语言,而且基本都免费,微软想分杯羹太难了。现在想搞跨平台也有心无力了,微软明显慢慢的势微了。其他。。
.NET Core支持POSIX和云原生环境,微软官方支持其在Linux上运行,但并未直接支持FreeDesktop的GUI框架。FreeDesktop是一个由贡献者共同维护的生态,其官方GUI体系是Wayland,微软在WSL2中亦在积极开发Wayland合成器weston。FreeDesktop缺乏官方控件,X11虽有控件,但其界面已过时。
很明显微软要扩大开发的市场。至于为什么要扩大只有微软知道。.net一直是只能在windows系统的服务器才能发布.net的应用程序。至于能在linux上面发布网上也是有教程,但是这是技术大牛做的事情,正真的商业应用不会让你这样去做的。你不开源,除了windows系统,其他系统微软都不会提供技术支持。
理解.NET Core与.NET Framework之间的差异,首先需关注其架构和目标。.NET Framework是微软在2002年推出的面向企业级应用的框架,侧重于Windows平台,提供丰富的类库与强大的开发环境。而.NET Core则是一个跨平台的开源框架,旨在提升可移植性与性能,支持Windows、Linux与Mac等多操作系统。