📜  C#| .NET Framework(基本体系结构和组件堆栈)

📅  最后修改于: 2021-05-30 01:47:30             🧑  作者: Mango

.NET是由Microsoft设计和开发的软件框架。 .Net框架的第一个版本是2002年发布的1.0。简单来说,它是一个虚拟机,用于编译和执行用C#,VB.Net等不同语言编写的程序。
它用于开发基于表单的应用程序,基于Web的应用程序和Web服务。 .Net平台上有多种编程语言可用,其中最常见的是VB.Net和C#。它用于构建Windows,电话,Web等应用程序。它提供了很多功能,还支持行业标准。

.NET Framework的基本体系结构和组件堆栈

从底部开始的前三个组件被认为是.Net框架的基本体系结构,该框架于2005年问世,此后,Microsoft在.Net Framework中添加了更多组件,如下所示:

.Net Framework组件堆栈

1. CLR(公共语言运行时):这是一个运行时环境,它执行以任何.NET编程语言编写的代码。 .Net框架提供了对许多语言的支持,例如C#,F#,C++,Cobra,Jscript.Net,VB.Net,Oxygene等

2. FCL(框架类库):此框架中存在大量的类库,称为FCL。

3.应用程序类型: .Net框架中内置的应用程序主要分为以下三类:

  • WinForms:表单–基于应用程序的应用程序被视为在此类别下。简单来说,可以说读写文件系统的基于客户端的应用程序属于这一类。
  • ASP .NET:基于Web的应用程序属于此类别。 ASP.Net是用于Web的框架,它提供了HTML,CSS和JavaScript的强大集成,这使其对开发Web应用程序,网站和Web服务非常有用。 Web服务已添加到.Net Framework 2.0中,并被视为ASP.NET Web应用程序的一部分。
  • ADO .NET:它包括开发用于与数据库通信的应用程序,例如MS SQL Server,Oracle等。它主要由可用于连接,检索,插入和删除数据的类组成。

4. WPF(Windows Presentation Foundation): Windows Presentation Foundation(WPF)是Microsoft提供的图形子系统,它使用DirectX,并在基于Windows的应用程序中用于呈现UI(用户界面)。 WPF最初于2006年作为.NET Framework 3.0的一部分发布,以前称为“ Avalon”

5. WCF(Windows Communication Foundation):它是一个框架,用于构建连接的和面向服务的应用程序,该应用程序用于将数据作为异步方式从一个服务端点传输到另一个服务点。它以前被称为靛蓝

6. WF(Windows Workflow Foundation):它是Microsoft提供的一项技术,为在.Net应用程序中构建工作流提供了一个平台。

7.卡空间:这是一个Microsoft .NET Framework软件客户端,旨在让用户以安全,简单和可信赖的方式向在线服务提供其数字身份。

8. LINQ(语言集成查询) :. Net框架版本3.5中引入了LINQ。基本上,它是一种查询语言,用于使用VB或C#编程语言查询数据源。

9.实体框架:这是.Net Framework 3.5版中基于开源ORM(对象关系映射)的框架。它使.Net开发人员能够使用.Net对象处理数据库。在实体框架之前,.Net开发人员已经执行了许多与数据库有关的事情。就像打开与数据库的连接一样,开发人员必须创建一个数据集以将数据提取或提交给数据库,然后将数据从该数据集转换为.NET对象,反之亦然。这给开发人员带来了困难,并且这也是容易出错的过程,然后“实体框架”就为应用程序自动化了所有这些与数据库相关的活动。因此,实体框架允许开发人员在更高的抽象层次上工作。

注意: .NET Framework 3.5中添加了REST(表示状态传输)AJAX ,作为ASP.NET的扩展和服务,用于增强.NET Framework的Web服务。

10.并行LINQ(语言集成查询):它在.Net Framework 4.0版中提供,也称为PLINQ。它为LINQ提供了并发查询执行引擎。它并行执行LINQ ,以便尝试使用正在执行的尽可能多的处理能力系统。

11. TPL(任务并行库):它是一组公共类型和API。通过简化向.Net应用程序添加并发和并行性的过程,它使开发人员可以提高生产率。

12.用于商店/ UWP应用程序的.NET API: 2012年,Microsoft添加了一些API,用于使用C#或VB为Windows创建UWP(通用Windows平台)应用程序。

13.基于任务的异步模型:该模型用于描述.Net Framework中的异步操作和任务。