.net基础概念

1. .NET Framework

.NET Framework开发平台包含公共语言运行库(CLR)和基类库(BCL),前者负载管理代码的执行,后者提供了丰富的类库来构建应用程序。.NET Framework仅支持Windows平台

2. Mono

由于.NET Framework支支持windows环境,因此社区开发了Mono,是可以跨平台运行的,但是其远远落后于.NETFramework的官方实现

3. .NET Core

微软官方提供的跨平台运行平台。包括名为CoreCLR的CLR跨平台实现和CoreFX的流畅的BCL。.NETCore的运行速度快。

.NETCore已经重命名为.NET,为了和.NET Framework区分,主版本号跳过了数字4,以免和.NET Framework 4.X混淆。其版本可以是长期支持的(LTS),也可以是当前的(Current)

3.1 .NET Runtime 和.NET SDK

.NET Runtime 版本控制遵循语义版本控制,也就是说,主版本表示非常大的更改,次版本表示更新,而补丁版本表示bug修复。.NET Runtime更新与主版本(如 6.x版)兼容。

.NET SDK 版本控制不遵循语义版本控制。主版本号和次版本号与匹配的运行时版本绑定。.NET SDK更新版本保留了构建适用于旧版运行时的应用程序的能力,可以使用以下命令更新版本:

bash 复制代码
  dotnet-core-unistalll remove -all-previews-but-latest --sdk

4. 运行过程

dotnet CLI工具使用的C#编译器(名为Roslyn) 会将C#的源码转换成中间语言(IL)代码,并将IL存储再程序集(DLL或EXE)中。IL代码语句就像汇编的指令,由.NET的虚拟机CoreCLR执行。CoreCLR运行时,先从程序集中加载IL代码,再由JIT编译器将IL代码编译成本机CPU指令,最后由机器上的CPU执行。

相关推荐
张人玉2 小时前
基于 C# / .NET 8 + Windows Forms + SQLite 的桌面银行业务演示系统——华夏示范银行管理系统
windows·sqlite·c#·.net
慧都小妮子3 小时前
.NET 报表控件选型对比:Stimulsoft 与 FastReport 怎么选
c#·.net·报表开发·数据可视化·报表控件·报表引擎选型
我是唐青枫5 小时前
C#.NET PInvoke 深入解析:封送、内存布局与原生互操作实战
开发语言·c#·.net
geovindu5 小时前
CSharp: Strategy Pattern
开发语言·后端·c#·.net·.netcore·策略模式·行为模式
geovindu6 小时前
CSharp: Task Scheduler
开发语言·后端·c#·.net·.netcore
海盗12347 小时前
微软技术日报 2026-09-10:Project Zenith 开发者设备亮相,.NET 11 RC1 可投产
microsoft·r语言·.net
唐青枫1 天前
C#.NET PInvoke 深入解析:封送、内存布局与原生互操作实战
c#·.net
yywww1 天前
GenHTTP on .NET 11 登顶HTTP Arena 多个榜单(这是何方神圣)
.net
咕白m6251 天前
C# 如何限制 PDF 复制、打印权限?
c#·.net
慧都小妮子1 天前
GcExcel 服务端 Excel 组件:无需安装 Office 的 Java/.NET 报表方案
java·.net·excel·gcexcel·服务端excel组件