使用反映(Reflection)讀取組件的資訊
續前一篇 Two-tier 架構改變成 three-tier,確定實作方法後,評估實作的工作量可不小,針對一個既有的資料處理類別,得對應寫出:
1. 新增一個 Interface
2. 新增一個 Proxy 類別,實作上面的 Interface
3. 新增一個 Web Service
而這些撰碼的過程,大部份都是 Copy-Paste 動作 或 很機械式的修改
筆者想到透過 Reflection 讀取原本的資料處理類別,就可以分別產生另外三組程式碼。
讀取單一組件取得公開方法,如下:
private static void GenCodeByDllFile(string dllname) //讀取所有類別 //TODO 輸出程式 } |
程式碼範例:http://files.dotblogs.com.tw/robin/1303/20133810267568.zip