2010年6月17日 星期四

服務與資料庫_學習心得(JQuery+WCF+LINQToSQL)

因為”原因”,所以開始從黃忠誠老師的「極意之道.NET Framework3.5資料庫開發聖典」開始看一些ORM的東西,結果後來衍伸出LINQ、WCF服務等多項對我來說是新技術的測試,當那天覺得好像有點掌握到整體架構的時候,才發現測試的網頁並不會顯示出我想要的效果,當資料增、刪、修的時候必須要再重新Postback一次,才會列出正確的資料列表。

一開始測試是否可以連到WCF服務時,皆是以一般將程式碼寫在CodeBehide的方式來進行測試,所以運作的流程就會變成像下圖一樣,也就是說當使用者按下增修按鈕時,伺服器被告知要呼叫WCF服務,WCF即開始進行資料庫增修,這時候變成資料庫持續進行增修動作,WCF則返回呼叫完成,導致瀏覽器重新整理以後並未接收到最新的資料更新列表。

所以理論上的方式應該是,前端不斷的去偵測後面服務是否完成了,如果完成就進行重新整理的動作,另一個方式是當後端資料庫完成更新後,通知前端進行重新整理,已取得最新的資料列表。講到這裡,應該就可以聯想到大概的解決方法,也就是應該要用非同步的方式。等服務告知處理完成以後,再對資料表進行更新。

那非同步在ASP.NET也就只能使用JavaScript,去查查網路上的文章才發現,之前課堂上老師常常在講的JQuery現在必須要上場了,所以又趕快去看JQuery相關的文章。

到今天,終於有一個大體上的認識了,因為之前都只有使用到FrameWork2.0,所以積欠了很多需要學的東西,這兩個星期終於做了一次了結,雖然不見得完全正確,但也在心中有勾勒出一個架構了。

該學的東西:
前端:JQuery
伺服器端:WCF服務、LINQ語法
資料庫端:ORM(LINQ To SQL、ADO.NET Framework)

後面伺服器與資料庫部份,即便之後前端改採SilverLight或是Flex也可以比較有一個整體概念,若使用SL也只需要在WCF服務上做簡單的修改,感覺是一個非常值得投資的技術。

沒有留言:

張貼留言