請指出某人,請解釋一下,如果不給SqlDataReader一個公共構造函數,可能會有哪些優點。不使用新關鍵字創建SqlDataReader對象有什麼好處。爲什麼System.Data.SqlClient.SqlDataReader沒有構造函數
謝謝, Tinks
請指出某人,請解釋一下,如果不給SqlDataReader一個公共構造函數,可能會有哪些優點。不使用新關鍵字創建SqlDataReader對象有什麼好處。爲什麼System.Data.SqlClient.SqlDataReader沒有構造函數
謝謝, Tinks
的SqlDataReader
被設計爲僅使用SqlCommand
的結果,或在ADO.NET框架某些其他數據源被創建。我假設列舉跨SQL Server數據庫連接的查詢結果需要一些內部實現方面的內容給讀者,ADO.NET類以外的任何人本身都沒有辦法提供。
如果你想自己創建一個datareader(如果你正在實現一個新的數據提供者,你只需要做這件事),這裏有IDataReader
接口。
如果您想定製數據讀取器的行爲(例如,如果您正在爲ADO.NET編寫一個包裝程序庫,它提供了一些其他行爲,例如自動記錄異常,自動重試等),那麼您可能希望封裝SqlDataReader
,使其成爲您正在創建的任何課程的私人成員(例如,假設您正在創建ExceptionLoggingDataReader
)。您並沒有真正改變SQL數據訪問行爲本身,這就是爲什麼子類化SqlDataReader
不是允許的選項。