天空的垃圾 場
Sky Chang Windows Azure 微軟最有價值專家 天空的垃圾場 blog.sanc.idv.tw • ASP.NET MVC • Visual Studio ALM • Windows Azure
 現實的ORM  DB First    產生edmx檔案來map DB Table 更新時需要重新產生edmx 刪除Table欄位需要手動刪除  Model First  幾乎沒人使用  Code First     請和DBA打好關係 如有使用SSDT容易造成衝突 現有DB的情況下還是可以用工具產生Code Code和DB Shema只需要撰寫一次
執行SP ( Code First ) 執行SP查詢
Code First
 數量非常非常的多  都是重複的Code
 利用泛型  收納到只剩下一支
Generic Repository
 通常不會只針對一個Table CRUD  會產生多個Repository  泛型Repository一樣會需要建立多個  每個Reposotory內的Context各自獨立
 集結所有Repository  統一透過Unit Of Work
Unit Of Work
• 後端需要撰寫大量的 查詢條件 • 容易遇到循環參考性 錯誤
 透過網址篩選資料  透過網址Include相關的資料
Web API & OData
JayData & Kendo UI & AngularJS
• 自動Mapper兩個物 件 • 利用AutoMapper再 隔離一層
AutoMapper
 應用程式係圍繞著一個獨立的物件模型 來建構。  內層定義介面,外層實作介面。  耦合的方向是朝向中央。  應用程式的所有核心程式碼可以在與基 礎建設分離的情況下正常運行。  ( By 蔡煥麟老師翻譯 )  核心 : IOC & DI
IOC x DI x !?
真實環境的Asp.net MVC
真實環境的Asp.net MVC

真實環境的Asp.net MVC