六月 2008 Entries
承繼上篇【ObjectDataSouce簡介Part1:兼具ADO.NET的自由與DataSouce的方便】,我們這篇就來拿個實際範例,告訴各位如何撰寫相關的程式。
一般市面上介紹的書籍,大部分都會從SqlDataSouce與GridView,DetailView等DataControl來介紹,當然這些東西很方便,可以在最少的程式碼的情況下,做出新增修改刪除查詢。但是,事實上在專案開發下並非如想像中這麼美好,您不會永遠都是處理單一資料表的新增修改刪除查詢。當遇到要處理兩個資料表以上的時候,又該如何呢??
在ASP.NET 2.0裡面多了一個ObjectDataSouce,這個東西可以讓我們在處理資料的時候,可以透過自己寫的程式,或者已經開發好的物件來撰寫。
[轉貼]把Excel內的Flash找出來另存的VBA程式碼
小喵以前撰寫ObjectDataSouce都是透過DataSet,DataTable,DataReader的方式傳回值,而要進行維護的動作,也是一個一個的參數慢慢傳遞,後來小喵看到Jeff大大的這篇文章【ObjectDataSoruce 繫結 BusinessObject 控制項】,原來可以用物件的方式來傳遞,於是小喵今天開始著手看看是否能夠改用物件的方式處理。
資料表設計經常會有Head,Detail的設計,拿最普遍的範例(北風資料庫)來看。訂單就有分為訂單Head檔(Orders)與訂單Detail明細(Order Details)這兩個資料表。當然這樣的資料表示有關係的,已訂單為例的話,關係就是訂單編號(OrderID)
那麼如何在畫面上展現這樣的資料呢,小喵整理以下幾種
ASP.NET方便套用一致外表的Skin(Theme)(動態錄影教學)
小喵錄製個動態教學,透過這個動態教學將可以學到
如何建立Theme,Skin
如何套用Page的Theme設定與Skin的關係
如何設定全部的Page套用相同的Theme
如何動態的更改SkinID達到動態的變更Skin
其實這個問題並不難
比較麻煩的是一般人可能不知道如何設定【物件中的物件】如何去設定他的事件。
以這個範例為例...
緣起
承繼前兩篇,從第一篇的【願景】,與第二篇的【樹狀結構畫面維護】,這一篇來談談如何處理角色的部分。角色的意義,請參考小喵第一篇【ASP.NET進階權限控管-Part 1 願景】裡面的說明,這裡就不再贅述了。直接進入到角色的定義、以及角色←→使用者之間的關係如何維護。
先從角色的定義來談起,先看一下角色的欄位說明
在使用WebUserControl的時候,如果一個畫面有數個WebUserControl的話,他們彼此間要怎麼溝通呢,也許有人說,使用FindControl/Property啊!!的確,小喵以前是這樣處理的,不過小喵卻發現這會讓WebUserControl在程式撰寫上變得複雜,既然要寫成WebUserControl,就是要把這些東西抽出來獨立處理/重複使用。但是如果寫的過程讓他與別的東西關係太密切,那就失去了抽出獨立處理/重複使用的目的。
再一次偶然的機會與熱心的Allen大聊到了物件(物件小喵一直都還在學),Allen大十分熱心的提示小喵可以用Interface來解決這類的問題。後來小喵在Allen大的文章也找到相關的範例與影片教學。不過範例是C#的,小喵用VB.NET來說明一次。
摘要:線上C#(CSharp)與VB.NET互轉的網站
摘要:Panasonic S7口袋機,隨拍隨傳超精彩
在網路上看使用者發問的時候,還有很多從ASP剛轉換ASP.NET的開發人員,在使用者驗證與畫面授權上,還是沿襲著以往的Session驗證的方式。其實在ASP.NET裡面就有一整套完整的驗證與授權機制。使用內建的機制可以更簡單的就能夠做到【登入驗證】與【資料夾授權】的功能。透過這篇文章,希望讀者可以學到驗證授權機制、如何搭配自己的資料庫,做到相同的驗證機制。