摘要
本期共有9篇文章:
- 藉助UpdatePanel實現消極式載入
- 技巧和訣竅:ASP.NET中的URL重寫
- Sys.WebForms.PageRequestManagerParserErrorException——這是什麼東西?應該如何避免?)
- 編寫自己的Rich Text Editor
- Mike Woodring的.NET樣本程式
- ASP.NET中內建的非同步I/O支援
- ASP.NET AJAX Control Extender中對跨瀏覽器的支援——比我想象的更巧妙
- 從ASP.NET Web Site遷移到ASP.NET Web Application Project
- IIS 7:Windows Vista及更高版本的Web伺服器
[1] Delayed load with an UpdatePanel (藉助UpdatePanel實現消極式載入)
若是在頁面的載入過程中有某個步驟非常耗時,那麼可以考慮一下這個巧妙的方法。其基本思想就是,先儘快將頁面顯示出一部分。然後由頁面中的Timer觸發某個UpdatePanel進行更新,此時再在伺服器端進行那些漫長的操作。這樣做的好處就是儘快給使用者反饋,別讓他們傻等著。
其實這樣做有些殺雞用宰牛刀,更好的方法也不是沒有,不過若你對JavaScript實在是不感冒的話,那麼這個也是不錯之選。
[2] Tip/Trick: Url Rewriting with ASP.NET (技巧和訣竅:ASP.NET中的URL重寫)
這是Scott大牛的一篇簡要介紹URL重寫文章(當然是在ASP.NET平台上),說好聽了叫做提綱挈領,說不好聽的就是泛泛而談。不過若是這樣的高手再來寫一些太過細緻的文章,那麼似乎有點丟面子了(呵呵,玩笑而已)。
實話實說,本文還是相當向當地有才的!Scott的文筆讓我們放心,沒有什麼生僻詞或是複雜句法,讀完之後會對自己的英語水平信心爆棚。其中包含了如下內容,非常適合從未接觸過URL重寫的朋友學習。特別是四種方法均給出了樣本程式,實屬難得!
- 為啥需要URL重寫/映射?
- URL重寫的情境舉例
- 第一種方法:使用Request.PathInfo參數代替QueryString
- 第二種方法:使用HttpModule
- 第三種方法:在IIS 7上使用HttpModule對沒有副檔名的URL進行重寫
- 第四種方法:在IIS 5和IIS 6上使用ISAPIRewrite對沒有副檔名的URL進行重寫
- 在進行URL重寫時處理ASP.NET的回送
- 正確處理對CSS和映像的引用
[3] Sys.WebForms.PageRequestManagerParserErrorException - what it is and how to avoid it (Sys.WebForms.PageRequestManagerParserErrorException——這是什麼東西?應該如何避免?)
Sys.WebForms.PageRequestManagerParserErrorException其實是一個ASP.NET AJAX中定義的用戶端異常。別被那麼長的異常名字嚇著了,其實很簡單,就是用戶端的PageRequestManager在解析伺服器端傳回的一段HTML(通過UpdatePanel進行非同步回送)時發生了錯誤。
我們都知道,由UpdatePanel實現的非同步回送的響應資訊有著獨特的、能讓用戶端PageRequestManager理解的格式,而若是你在非同步回送的過程中不小心打亂了這個格式,那麼就非常有可能看到這個異常。例如在Page_Load中用Response.Write()寫入了一段JavaScript等。
本文還給出了幾種導致Sys.WebForms.PageRequestManagerParserErrorException的常見原因,並分別給出瞭解決方案。實屬一篇關於ASP.NET AJAX深入分析的難得佳作。
[4] Rich Text Editor - Part I / Part II (編寫自己的Rich Text Editor)
你是否曾經想過,我們每天上網都要用到的那些Rich Text Editor到底是怎麼編寫出來的呢?這是用到了什麼高深的技術呢?其實並不難,跟著這兩篇文章學習一下吧,雖然篇幅有點長,但誰讓人家有技術含量呢?
[5] Mike Woodring's .NET Sample Page (Mike Woodring的.NET樣本程式)
Mike Woodring給出了一些小小的.NET樣本程式,也可以叫做代碼片斷。內容算是比較豐富,收藏起來,以後需要的時候可以快速查看一下。包含如下幾個大的分類:
- Remoting and Sockets
- Reflection
- Threading and Synchronization
- Assemblies
- Security
- Configuration
- Context
- Miscellaneous
[6] Built-In Asynchronous I/O Support in ASP.NET (ASP.NET中內建的非同步I/O支援)
I/O操作一般都很費時——地球人都知道。ASP.NET(或者說.NET Framework)因此內建了一些輔助我們進行非同步I/O操作的機制,本文就介紹了一些典型的情境,適合入門。包含如下內容:
- 非同步檔案讀寫
- 非同步Remoting
- XML Web Services
- 非同步網路通訊
[7] Cross-browser ASP.NET AJAX Control Extender support - trickier than I thought (ASP.NET AJAX Control Extender中對跨瀏覽器的支援——比我想象的更巧妙)
本文分析了ASP.NET AJAX Control Extender中對跨瀏覽器的支援的具體實現方法,並舉出了很多執行個體。作者現在正在參與開發ASP.NET AJAX Control Extender,有著相當的經驗。若你想瞭解一些跨瀏覽器安全色的實現,那麼可以參考一下本文。
[8] ASP.NET Projects to WAP conversion (從ASP.NET Web Site遷移到ASP.NET Web Application Project)
ASP.NET Web Application Project已經發布多時了,不單是那些“懷舊”的開發人員喜歡,這個東西也確實能夠彌補很多ASP.NET Web Site的不足之處。
但從ASP.NET Web Site到ASP.NET Web Application Project的遷移過程卻並不總是那麼簡單的,大牛Rick Strahl就在這篇文章中給出了一個比較詳細的遷移指導,非常值得我們參考。
[9] IIS 7.0: Explore The Web Server For Windows Vista And Beyond (IIS 7:Windows Vista及更高版本的Web伺服器)
這是一篇介紹IIS 7的文章,並不深入,但卻完整覆蓋了IIS 7的各個新特性。作為MSDN上的文章,自然秉承了它一貫嚴肅性,可能讀起來並沒有Blog文章那麼有意思,但其權威性卻不容挑戰。有空的時候看看也好,免得被微軟的技術發展所拋棄~~
本文介紹了以下關於IIS 7的內容:
- Modular Web Server
- Simplified Deployment and Configuration
- Improved Administration
- .NET Framework and Scripting
- Building Web Server Features
- ASP.NET Integration
- Improved Security
- Improved Diagnostics
- Diagnosing Errors without Debugging
- Improved Performance
- Backward Compatibility
[a] Windows Live Messenger的有趣玩意
最後來個“彩蛋”,具體看下面吧,不多說了。