我需要一些幫助。我一直在前進,我應該去哪個方向,並有一些我不喜歡或可以使用的選項。構建我自己的SqlDataReader對象
我寫了一個通用數據轉儲工具,用於從指定服務器提取數據並將其轉儲到逗號分隔文件。它的配置和運行的查詢來自專門爲此工具創建的SQL表。然而,我有一個新的要求,即有一些數據轉儲需要從不同服務器提取數據併合併到一起,但我不想爲這種「自定義」類型的轉儲/轉儲更改工具。我試圖保持它的通用性,所以我不會經常編碼。我的想法是創建一個庫,在這個庫中,我的報告工具可以用於這些定製類型的每個拉,並且此庫返回的數據是SqlDataReader對象。但是,由於這個lib將不得不從不同的服務器上取出併合並數據,是否有可能讓lib使用這個拉取的數據創建它自己的SqlDataReader並返回到數據轉儲工具,或者我想這太多了?
我不想返回數組,因爲它不是現在如何通過數據循環工具,主要是因爲我現有的一些數據轉儲是數百萬行,所以我現有的循環是一個數據讀取器循環來保持內存不變。然而,這些庫可能會創建一個二維數組,只要它可以在返回之前轉換爲SqlDataReader對象。這樣我就不必在我的應用程序中改變太多循環。
希望大家都有道理。我在我的腦海裏彈跳,所以我最終寫了10次。
編輯:請記住,每條記錄將分散在3臺服務器上,必須合併。這三個不同的進程一起工作,但有自己的服務器。例如,來自服務器1的ID將與Server2上的Server1ID相關。
如果你寫了10次,也許你需要考慮用設計模式做一些事情,以及重構你的代碼/實現接口以獲得特定於現有項目的特定功能,而不會影響代碼的原始狀態。 – MethodMan 2013-03-12 16:07:25
@MahmoudFayez這是一種可以提取和轉儲數據的服務,這無助於記錄1分散在所有服務器上並需要合併。 – Switch 2013-03-12 16:33:37