發表文章

目前顯示的是 6月, 2010的文章

在Silverlight中透過WCF存取Session資料

圖片
有一些程式碼,是屬於『簡單,但是很重要』的部分。像現在我們的這個範例就是。 在上課時不只一個學員(嚴格說起來有很多很多學員),都很關心Silverlight和ASP.NET的整合,不論是資料的交換,或是ASP.NET頁面上的互動和整合,由於Silverlight以透過ActiveX插件的形式崁入網頁中,使得學員以為要進行資料交換很困難或是完全不行。 這真可是誤會大了,對於Silverlight來說,與遠端(伺服器端)溝通的方是最典型的就是透過WCF Services(當然,傳統的Web Services也行),所以只要透過在Silverlight場景中呼叫WCF Services,就可以輕易的存取Session資料。 例如,你可以建立一個底下這樣的WCF Services: namespace AccessSessionViaWcfServices.Web { [ServiceContract(Namespace = "")] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] public class Service1 { [OperationContract] public string GetSession(string SessionName) { // Add your operation implementation here return System.Web.HttpContext.Current.Session[SessionName].ToString() ; } [OperationContract] public bool SetSession(string SessionName,string SessionValue) { // Add your operation implementation here System.Web.HttpCon

關於 如何快速增進程式功力...

最近有網友在Blog上問到關於學習程式設計的問題(如何快速增進程式功力...),我也很開心nowshow幫我做了一些回覆。(其它潛水多年的朋友們,該是甦醒的時候了...) 其實我一直很想找個機會和大家聊聊『學習』這個主題,因為自己走了很多的冤枉路,所以總覺得有好多東西想分享。只是有時後工作忙,忘了,有時候寫著寫著發現詞不達意,放棄了。前陣子常這樣,說來你可能不相信,其實在這個Blog裡的已發表文章數量差不多只是所有所有文章數量的2/3,其他的我都沒寫完,擱著...久了就乾脆放棄不發表了。最近想打破這個限制,所以想到什麼寫什麼,也請讀到的朋友們原諒文章中用詞的隨性,畢竟這年頭『卸卸』之類的火星文充斥,我們這些老頭們寫的文章應該算工整了。 回頭談學習,如何快速增進程式功力...? 說來慚愧,但不怕各位見笑,打從我學習程式設計以來,到目前為止,只『付費』上過一次電腦課程,而且還是國小約莫3,4年級,此後,我從沒上過任何一堂課。程式設計幾乎都是自學。 請千萬別誤會,我不是說上課不重要,特別是自己身為講師,如果我讓大夥覺得上課不重要,豈不是滑天下之大稽? 首先,我雖然沒付費上過電腦課,但自從開始以程式設計謀生(我的第一個收費的專案,是在高中時代寫的台北市某校的招生系統,當時還是用Clipper配合讀卡機呢)之後,只要有業界的教育訓練我都盡可能參加,每次的TechED我也都想辦法到場(公司出錢。對,我也曾和大家一樣坐在下面乖乖當聽眾),觀念和眼界的建立是相當重要的。我身邊也有一些朋友們,是透過資策會或是其他知名的教育訓練中心的套裝課程,開始進入程式設計的領域。也有不少是科班出身,然後投身資訊領域。這些養成對他們都有相當大的幫助。 但我要說的是,不管怎樣的養成,這絕對只是一個起頭,不管你曾經經過怎樣的訓練,你都只能拿到一張入場券,進入業界之後,才是真正挑戰和學習的開始。我相信幾乎每一個軟體開發從業人員都同意,如果你討厭常常學習新東西,目前的軟體業肯定不適合你。 我回頭想了一下最近15年,我比較我『學習』一門技術的時間,和『使用』一門技術的時間,大家要不要猜猜看是『學習』的時間多還是『使用』的時間多? 我發現,隨著近幾年技術演進的速度越來越快,我花在學習的時間越來越長(不過這也因為身為講師或前導廠商的我們在學習這門技術的當下,相對而言手邊的資源會比大夥來的少一些,技術愈成熟,學習資

關於RunAs...與Windows驗證的ASP.NET應用程式

從過去幾年教育訓練、專案和產品導入的經驗看起來,台灣的開發人員一般在開發網站的過程當中,實際上使用Windows驗證的場合相當高,但卻讓我很訝異的發現,實際上使用的開發人員卻不多? 很多企業在明明有AD的狀況下,還自己搞了一套SSO(Single Sign On)系統,當然,有些客戶是因為要整合非Windows環境的系統,那也就無可厚非,但卻還是看到不少客戶由於應用系統的建構是長年累月堆積出來的,一開始的Web應用程式並沒有用Windows驗證,導致後面想要做SSO也很困難。 總的來說,驗證這件事情被很多ASP.NET開發人員丟在一邊很久了,導致很多客戶即便有AD,卻總是用自己的資料庫存放帳號密碼,再讓ASP.NET應用程式走Forms驗證。 這也導致很多ASP.NET開發人員壓根沒用過RunAS這個指令。 最近這幾年因為我任職的公司產品的特性,我們開發的ASP.NET網站甚或是Silverlight網站,都採用了Windows驗證,並且搭配Kerberos進行整合驗證動作。也因此,開發人員常常需要透過不同的帳號模擬用戶進行登入,來測試各種不同情境下的使用者功能。 這時候,Windows當中的RunAs指令就相當重要了,你可以在Cmd Line利用底下的指令模擬特定使用者執行某個應用程式,最常用的情境式模擬特定使用者執行瀏覽器: runas.exe /user:StudyHost.Com\david "C:\Program Files\Internet Explorer\iexplore.exe" 或 runas.exe /user:david@StudyHost.Com "C:\Program Files\Internet Explorer\iexplore.exe" 上面這樣的指令可以模擬特定的使用者登入瀏覽器,方便開發人員進行測試工作。 如果你懶的每次都要輸入密碼,也可以下底下這樣的指令: runas.exe /savecred /user:david@StudyHost.Com "C:\Program Files\Internet Explorer\iexplore.exe" 這樣就不用每次重新輸入密碼了。 此外,如果你撰寫的Windows驗證的 ASP.NET應用程式,需要讓使用者登出(或重新用別

Web 版Office Released...

圖片
Web 版Office Released... 我試著用了一兩天...個人覺得...速度上還是慢了一些。

在ASP.NET中使用 大檔案拖曳上傳 功能

在ASP.NET中使用 大檔案拖曳上傳 功能的教學影片已上架, 請參考FaceBook專頁。 [ 連結 ]

File Uploader 大檔案拖曳上傳控制項

圖片
想要在您的 Silverlight 和 ASP.NET 頁面上加入『大檔案拖曳上傳』的功能,並在上傳時顯示即時的上傳進度嗎? 在上個月的Visual Studio 2010上市發表會當中,我概略的展示了Silverlight 4的一些新功能,其中我個人最喜歡的範例就是大檔案的拖曳上傳(就是把file從檔案總管中拖曳到瀏覽器中並直接上傳,同時顯示該檔案的真實上傳進度)。 這個功能早在ASP.NET 2.0時代,我們就嘗試透過AJAX來開發過(當然當時只能做大檔案上傳,還沒有拖曳功能),在坊間許多文管系統當中(最典型的就是MOSS),這個功能也都是相當重要的需求之一。但礙於當時技術的限制,過去多半的解決方案都是在用戶端安裝特殊的ActiveX元件來處理。一來這衍生出安全性問題,二來也不是每一個用戶端都能夠順利或無條件的安裝ActiveX元件,再加上許多ASP.NET開發人員對於ActiveX元件的開發可能相當陌生,造成開發人員很大的困擾。 在Silverlight 4出現之後,我就一直很想把這個功能作一些整合,因此才有在VS2010上市發表會中的那個範例。但畢竟整個上傳動作涉及前後端的交互運作,前端是Silverlight 4,後端是ASP.NET應用程式,要開發人員從頭到尾重新建立這樣的功能實屬不易。 也因此,趁記憶猶新,我把拖曳大檔案上傳的功能整理成可在Silverlight 4或ASP.NET應用程式當中可重複使用的 控制項 ,提供給需要的開發人員直接使用。 相關的套件FileUploader檔案(Binaries & Examples)下載位置可參考[ 這裡 ]。 (範例包含Silverlight與ASP.NET) 在ASP.NET 2.0~4.0應用程式中的直接使用方式之說明文件可參考[ 這裡 ]。 (是的,在ASP.NET當中也可以 直接 使用,開發人員不一定需要會Silverlight) 在Silvelright 4應用程式當中的使用方式之說明文件可參考[ 這裡 ]。 底下是簡單的測試畫面展示,希望對各位有幫助。

ASP.NET 4.0當中的 URL Routing機制

在剛推出的ASP.NET 4.0當中,Web Forms所新支援的URL Routing機制也是最令大家矚目的新功能之一,過去在MVC, Dynamic Data WebSite中才使用的URL Routing機制,現在在傳統的Web Forms當中也可以使用了,這對我們開發大型的Web應用程式相當有幫助。 相關的介紹和說明可以參考本期Run!PC雜誌,您也可以點選[ 這裡 ],參考剛才公布在FaceBook上的ASP.NET URL Routing機制的使用展示影片。

Visual Studio 2010 CHT is released on MSDN

圖片
MSDN當中已經可以下載Visual Studio 2010中文版了, 有需要的朋友們可以下載(請選「開發人員工具」->「Visual Studio 2010」-> 語言分類請選「Chinese – Traditional」)中文試用版將會再晚一些釋出。