複製鏈接
請複製以下鏈接發送給好友

基礎類庫

鎖定
基礎類庫 (BCL) 是微軟所提出的一組標準庫可提供.NET Framework所有語言使用。
隨着 Windows 以及 .NET Framework 的成長,BCL 已近乎成為在 .NET 上的 Windows API。
中文名
基礎類庫
外文名
Base Class Library
學    科
計算機

基礎類庫BCL 基本名字空間列表

系統
.NET Framework 類庫中最基底的服務 [1]  ,提供應用程序域 (Application Domain),數據類型,I/O以及其他類庫的基礎。
System.Collections中
提供 .NET 應用程序所需的數據結構以及集合對象的支持,其中 System.Collections.Generic 名字空間更導入了泛型(Generic)的支持。
系統配置
提供 .NET 應用程序在配置設置上的支持。
System.ComponentModel
提供 .NET 的組件基礎架構。
System.Data
ADO.NET的組成類庫,為數據訪問功能的核心功能。
System.Drawing中
提供 .NET 的繪圖能力,包含基本位圖處理以及視頻與色彩處理,打印支持也由本名字空間提供,此名字空間包裝了大多數的GDI以及GDI+的 API。
System.EnterpriseServices
提供 .NET 與COM+的互通能力。
System.IO
提供數據流與文件讀寫的支持:
  • TextReader/TextWriter,StringReader/StringWriter:文字檔與字符串的讀取器與寫入器。
  • BinaryReader/BinaryWriter:二進制數據讀寫器。
  • StreamReader/StreamWriter:數據流讀寫器。
  • Directory/DirectoryInfo:磁盤文件夾對象。
  • File/FileInfo:磁盤文件對象。
  • DriveInfo:計算機中的磁盤信息對象。
  • FileStream:文件數據流。
  • BufferedStream:緩衝器數據流。
  • MemoryStream:存儲器空間數據流。
在此名字空間下,還支持幾個功能類別:
  • System.IO.Compression:數據壓縮工具,支持 GZip 和 Deflate 兩種壓縮法(.NET Framework 2.0 才有)。
  • System.IO.Pipe:管線數據流支持(.NET Framework 3.5 才有)。
  • System.IO.Packaging:支持 ZIP 格式的壓縮封裝(.NET Framework 3.0 才有)。
System.Net
.NET 中的網絡功能,例如:
  • HTTP通信的 WebClient, HttpWebRequest/HttpWebResponse。
  • FTP通信的 FtpWebRequest/FtpWebResponse。
  • TCP/UDP通信以及伺服類別的 TcpClient/TcpListener, UdpClient/UdpListener。
  • Winsock的基礎 Socket 類別。
  • SMTP郵件寄發的 SmtpMail 類別以及包裝電子郵件內容的 Message 類別。
System.Reflection
.NET 中提供運行期類型信息(RTTI)的支持,可以用來訪問.NET 組件(Assembly)中的中介數據,並可以調用內部的屬性或方法等。
System.Diagnostics程序
.NET 中提供系統診斷,除錯,追蹤與運行外部進程的能力。
  • Debug 類別可在除錯程序運行中提交除錯消息。
  • Debugger 類別可以控制 Visual Studio 或兼容的除錯器運行,包含中斷點設置與啓動除錯等。
  • Trace 類別可以在非除錯的狀態下提交診斷消息。
  • EventLog 類別可以和 Windows 的事件查看器交互。
  • Process 類別可以獲取在計算機中運行的進程信息,以及啓動與終止進程。
System.Management
.NET 的WMI(Windows Management Instrumentation)支持。
System.Messaging
.NET 與 Microsoft Message Queue Service(MSMQ)的交互支持。
System.DirectoryServices
.NET 的Active DirectoryService Interface(ADSI)接口支持。
System.Runtime
.NET 中提供高級開發的支持,其下有幾個重要的類庫:
  • System.Runtime.CompilerService:提供編譯器所需中介數據的支持。
  • System.Runtime.InteropService: .NET 對COM與純Win32 API以及以函數方式開放的DLL的交互支持。
  • System.Runtime.Remoting:.NET Remoting組成的類庫。
  • System.Runtime.Serialization:在 .NET 中提供數據序列化(Serialization)的支持,可支持SOAP,Binary,XML等序列化能力。
System.Security
.NET 中控管安全性的重要類別。
  • System.Security.AccessControl:包裝了對 Windows 資源的訪問控制 (Access Control) 所需的 API。
  • System.Security.Principal:包裝了用户原理 (Principal) 對象,以支持不同的驗證方法。
  • System.Security.Cryptographics:包裝 .NET Framework 所支持的密碼編譯算法,例如DES,AES,SHA,MD5等。
  • System.Security.Permission:包裝 .NET Framework 的Code Access Security所需的權限旗標。
  • System.Security.Policy:控制 .NET Framework 程序運行的原則 (Policy) 功能。
System.ServiceModel
WCF的組成類庫,於 .NET Framework 3.0 時出現。
System.Text
.NET 中對文字,編碼以及正規表達式(Regular Expression)的支持。
的System.Threading
.NET 中對線程控制的支持。
System.Timers
.NET 中的原生計時器支持(與 Windows Forms 中的 Timer 控件不同,它擁有更精準的計時器)。
System.Transactions的
.NET 中的DTCTransaction(又稱 OLE Transaction)支持,於 .NET Framework 2.0 時出現。
System.Windows.Forms的
Windows Forms的組成類庫,包裝了 Win32 用户界面,視窗,共用控件,以及 Shell 的基礎 API,以提供設計 Windows 應用程序用户界面所需的支持。
System.Windows
WPF的組成類庫,於 .NET Framework 3.0 時出現。
System.Web
ASP.NET的組成類庫,其中亦包含了IIS服務器的交互功能以及HTTP的服務處理類別,XML Web Service開發的基本支持也由本類別提供。
System.Workflow
WF(Windows Workflow Foundation)的組成類庫,於 .NET Framework 3.0 時出現。
System.Xml
微軟 XML 解析器 (Parser) 的主要包裝類別。
System.Linq
System.Xml.Linq
微軟 .NET Framework 3.5 中新提供的語言功能:LINQ的核心類庫,System.Linq 是 LINQ to Object,而 System.Xml.Linq 則是 LINQ to XML。

基礎類庫不同廠商的支持

有一些由微軟發展,以及其他廠商發展的類庫,也可以使用在 .NET Framework 中,它們都遵循一致的名字空間規範。
  • Microsoft.Win32 名字空間為包裝部分高級Windows API的類庫,其中包含了對Registry的訪問。
  • Microsoft.VisualBasic 名字空間則是為了Visual Basic語言特性所設計的類庫,例如 My 類別(放在 Microsoft.VisualBasic.MyServices)。
  • MySql.Data 則是由MySQLAB 所設計,供 ADO.NET 訪問之用的 MySQL 數據提供者。
  • OpenNetCF則是由外部廠商開發,類似於.NET Compact Framework的類庫,在 .NET CF 尚未成熟時,它扮演了重要的角色。
參考資料
  • 1.    "IV.3.1 The Kernel Profile". Standard ECMA-335 – Common Language Infrastructure (CLI) (Technical report) (6th ed.). Ecma International. June 2012. p. 437.