一般市面上介紹的書籍,大部分都會從SqlDataSouce與GridView,DetailView等DataControl來介紹,當然這些東西很方便,可以在最少的程式碼的情況下,做出新增修改刪除查詢。但是,事實上在專案開發下並非如想像中這麼美好,您不會永遠都是處理單一資料表的新增修改刪除查詢。當遇到要處理兩個資料表以上的時候,又該如何呢??
在ASP.NET 2.0裡面多了一個ObjectDataSouce,這個東西可以讓我們在處理資料的時候,可以透過自己寫的程式,或者已經開發好的物件來撰寫。
我們從以下的示意圖來看:
1.SqlDataSouce:
SqlDataSouce透過Select,Insert,Update,Delete四種Command設定來存取資料
2.使用ObjectDataSouce
ObjectDataSouce則是透過指定的類別、以及類別中所撰寫的Method(Function/Sub)來處理,其中Select必須傳回結果,傳回的結果可以用這幾種方式【DataReader、DataSet、DataTable、DavaView、Collection Objects(物件集合)】,也就是一般在寫Me.GridView1.DataSouce=XXXX這裡可以傳入的型態。而其他Insert,Update,Delete則是需要配合傳遞要維護的資料,並在裡面透過ADO.NET存取資料。
3.使用ObjectDataSouce配合Business Object(*.dll/Class)
可以再把資料的存取、以及一些商業邏輯抽出來,寫成一些商用物件,然後在寫個類別來運用這些商用物件,與ObjectDataSouce結合。
從這邊我們可以了解,使用ObjectDataSouce,可以自己撰寫程式來做資料的存取。能夠依照自己的需求來撰寫程式,讓系統能夠更靈活的應用。又可以透過DataSouce的機制,與資料控制項(例如GridView,DetailView,FormView等)結合。讓界面的部分能夠將程式減少,應用更為便利。可說是【兼具ADO.NET的自由與DataSouce的方便】。
至於2.3的方式如何撰寫,我們將在另外的文章中介紹。
^_^