对基类库和Framework类库感到困惑

时间:2009-08-24 16:56:02

标签: c# .net

ADO.NET和ASP.NET是Base Class Library的一部分吗?维基百科中给出的信息对我来说看起来很模糊。在figure中,它显示为一个单独的块。基类库(BCL)和框架类库(FCL)有什么区别? FCL是否是.NET Framework的一部分?如果是这样,为什么FCL没有作为.NET框架的一部分显示在figure中?

感到困惑!!

7 个答案:

答案 0 :(得分:8)

The Image describes the exact difference between BCL and FCL

如果你看一下上图,你会看到BCL和FCL之间的确切差异

答案 1 :(得分:7)

Framework类库是整个.NET框架安装中包含的所有内容。这包括ADO.NET,ASP.NET,WPF,Windows Forms等。

基类库是框架的主要核心部分,它允许公共语言运行时正常运行。这将包括系统命名空间,核心类型等。

答案 2 :(得分:3)

按照你问的顺序,

  • 不,数据库连接和实体框架与BCL中的标准字符串String / Stream / File / etc分开。
  • FCL是您链接到的图中的所有内容。整个交易。

@Scott - 从您发布的文字

  

“基类库(BCL)服务   作为任何.NET的标准运行时   语言并提供类型   代表内在的CLR rtpes,   集合,流,字符串   操纵,基本文件访问等。

     

FCL 中剩余的是   专注于特定功能领域,   例如提供数据库访问。“

对我而言,这意味着FCL是整体,而BCL是其中的一部分,但也许你会以不同的方式阅读。

答案 3 :(得分:1)

基类库又称BCL是一组类,用于获取框架本身和虚拟机,即运行代码的运行时。它是.NET Framework的基础结构。 BCL是ECMA-335 standard

的一部分

Framework类库是使用BCL完成特定工作的其他库。

答案 4 :(得分:0)

  

框架类库(FCL)是   只是.NET的一个组件   框架和Java类似   类库,C ++标准   模板库(STL),微软的   活动模板库(ATL),   Microsoft基础类(MFC),   Borland的对象Windows库(OWL)   和许多其他人。

     

这是一组丰富的可重用类型   让你达到一个高水平   开发人员的生产力   简化许多常见的编程   任务。

     

基类库(BCL)服务   作为任何.NET的标准运行时   语言并提供类型   代表内在的CLR rtpes,   集合,流,字符串   操纵,基本文件访问等。

     

FCL中剩下的课程是   专注于特定功能领域,   例如提供数据库访问。

因此,简而言之,安装.NET Framework时安装的所有“更高级”类都是Framework类库的一部分,但不一定是基类库的一部分。具体来说,ADO.NET类不是BCL的一部分,但它们是FCL的一部分。

至于为什么维基百科上的参考图中没有显示FCL,很可能是因为在视觉上传达FCL不是单一物理“事物”这一事实并不总是容易的。相反,它由多个组件组成。

答案 5 :(得分:0)

基类库是可以在任何类型的应用程序中使用的Framework类库(图中的.NET Framework堆栈)的一部分。

上面的部分取决于您正在制作的应用程序类型。如果您创建没有数据库连接的应用程序,则对ADO.NET库没有任何用处。如果您创建Web应用程序,则不会使用winforms库。

答案 6 :(得分:0)

类库是类的集合。它包括以下类:ADO.NET,XML支持,目录服务,常规表达,查询支持等数据访问。

.NET Framework中的基类库非常庞大。它涵盖了像Collection,System.Collection,System.Threading,System.CodeDom,System.IO,System.Reflection,System.Security等领域。