開發(fā)人員對.NET Framework數(shù)據(jù)簡單分析
進行數(shù)據(jù)庫操作.NET Framework數(shù)據(jù)可能要會花費很長時間才能完成。在現(xiàn)在的情況,單線程應(yīng)用程序必須阻塞其他操作,并且等待該命令完成,然后才可以繼續(xù)執(zhí)行它們自己的操作。
如果能夠?qū)㈤L時間運行的操作分配給某個后臺線程,就可以允許前臺線程在整個操作期間保持活動狀態(tài)。 例如,在 .NET Framework數(shù)據(jù)應(yīng)用程序中,通過將長時間運行的操作委托給后臺線程,可允許用戶界面線程在操作執(zhí)行時保持響應(yīng)狀態(tài)。
NET Framework 提供若干標準異步設(shè)計模式,.NET Framework數(shù)據(jù)開發(fā)人員可以通過這些模式充分利用后臺線程并釋放用戶界面線程或高優(yōu)先級的線程以完成其他操作。 ADO.NET 在其 SqlCommand 類中支持相同的設(shè)計模式。 具體而言,BeginExecuteNonQuery、BeginExecuteReader 和 BeginExecuteXmlReader 方法(與 EndExecuteNonQuery、EndExecuteReader 和 EndExecuteXmlReader 方法搭配)提供異步支持。#t#
說明:
異步編程是 .NET Framework 的核心功能,并且 ADO.NET 充分利用了標準設(shè)計模式。 有關(guān)可供開發(fā)人員使用的不同異步技術(shù)的更多信息,請參見使用異步方式調(diào)用同步方法。
盡管將異步技術(shù)與 .NET Framework數(shù)據(jù)功能一起使用沒有什么新增的需特別注意的事項,但與 .NET Framework 的其他領(lǐng)域相比,很可能更多的開發(fā)人員將在 ADO.NET 中使用異步功能。 了解創(chuàng)建多線程應(yīng)用程序的優(yōu)缺點十分重要。 本節(jié)之后的那些示例指出了若干重要問題,開發(fā)人員在開發(fā)納入了多線程功能的應(yīng)用程序時將需要考慮這些問題。
只在 Microsoft Windows XP 和 Windows 2000 中支持這些方法,在 Windows 98 或 Windows ME 中不支持這些方法。.NET Framework數(shù)據(jù)代碼清單04的功能是把DataSet中的Customers 數(shù)據(jù)表和DataGrid綁定起來。其他適用于復雜性數(shù)據(jù)綁定的組件實現(xiàn)數(shù)據(jù)綁定的方法類似此操作:
System.Data.SqlClient 可提供對從 SQL Server 7.0 版開始的 SQL Server 各個版本的訪問,這些版本封裝了特定于數(shù)據(jù)庫的協(xié)議。該數(shù)據(jù)提供程序設(shè)計的功能與適用于 OLE DB、ODBC 和 Oracle 的 .NET Framework數(shù)據(jù)提供程序的功能類似。System.Data.SqlClient 包括一個表格格式數(shù)據(jù)流 (TDS) 分析器以直接與 SQL Server 進行通信。