最近在開發新的專案,與同事在討論ORM的相關問題。
之前以MVC架構在開發網頁時,Model的部分還是用ado .NET,但利用Reflection
的方式,將他映射回類別,所以即使用ado來開發,但模型驗證的部分,還是可以
繼續使用。
之前會繞過ORM以ADO開發的原因是,團隊成員對SQL熟到炸了,不想為了取得資料,
來去學習ORM(學習也是成本),另外ORM也有它的極限,需要用到一堆join跟SQL函數
時,真的不知道該怎麼把他轉為ORM的寫法...
最近的案子,突然決定Model部分全部改為ORM的方式做處理,但是一遇到棘手的複雜查詢
,又非得回到ado的方式來做處理。
想請問大家在工作上,ado的使用者多還是ORM的使用者多?
對於複雜查詢時,又必須以ado的方式來解,或者將他包成stored procedure或view,
再用ORM去excute,這樣感覺像是再走回頭路,明明要去SQL化(物件導向),但一遇到複
雜查詢卻又非得回到ado的方式,Programmer必須得會SQL跟ORM,在程式裡出現2種風
格的model,其實我還蠻無法接受的....
以上跟各位分享與討論.....
(此篇非抱怨文,我已經習慣ORM的作業方式,但無法說服自己,必須在model寫成2種風格)