ASP.NET | The Will Will Web

The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

寫 ASP.NET 可利用 <asp:PlaceHolder> 降低 ViewState 大小

前幾天在調整一個網站的執行效能時,發現有幾頁的 ViewState 特別大,但是內容卻蠻簡單的,最主要就是一個 Repeater 控制項,內容不多,但 ItemTemplate 中只有用到一個 LinkButton 控制項,其他都是一般的 HTML 標籤加上 DataBound 語法 ( <%# Eval("XXX", "") %> ),由於我有用到 UpdatePanel 包住這個 Repeater 控制項,所以我 ViewState 不能關閉,關閉就會導致錯誤發生,所以我只能在 ItemTemplate 盡可能降低 ViewState 的使用,不過就因為除了 LinkButton 控制項之外的地方我都沒有可以調整的地方,才讓我想到還有個 PlaceHolder 控制項可用。

... 繼續閱讀 ...

手邊有一張速查表(Cheat Sheets)是件很方便的事

我個人有習慣收集一些網路上別人整理的速查表,因為程式開發的細節真的太多了,要能全部背起來不太可能,也沒什麼意義,甚至於有人說程式設計就是一件查詢、複製、貼上的工作而已。對我來說,寫程式首重觀念與經驗,有了完整而正確的觀念,就算記不得要怎麼寫,查詢一下就馬上能寫了;而有了經驗,對於一些難解的 Bug 自然能夠迅速解開。

... 繼續閱讀 ...

在網頁中設計 Word 格式匯出功能最簡單的方式

這其實是個很簡單的技巧,不過好像還是有些人不知道的,所以今天臨時想到就寫下來分享。不知道 Office 從何時開始支援開啟 HTML 文件,也就是說任何 HTML 的文件其實都可以在 Word 中直接開啟,甚至於你可以在瀏覽網頁時將網頁上的文字進行複製,然後到 Word 中貼上是可以保留網頁上的格式設定的。

... 繼續閱讀 ...

如何設定 IIS 6 讓網站應用程式運作的更穩定

最近有個客戶像我提及他們有台主機,IIS 每執行一段時間就會自動關閉,網站都連不上,他問我是不是 IIS 6 的問題?我回覆他:「要讓 IIS 6 出問題很難,通常這類的問題都是網站的 Application 出問題,才會導致網站被關閉。」但由於客戶的網站系統是一套購買來的系統,並無原始碼,也沒有修改的空間,這時若還是要提升該系統的穩定性,就必須要從「應用程式集區」下手。

... 繼續閱讀 ...

解決在 IE 下無法將 HTML/XML 轉成 jQuery 物件的問題

今天在寫一個 Web Service 的測試程式,而我的測試程式是完全用 jQuery 開發的,因為 jQueryAJAX 功能極強,幾乎可以完成所有 Web Service 的測試工作。不過,我這個 Web Service 走的並不是 SOAP 協定,而是客戶自行定義的 XML 格式,所以包括 Request / Response 都是 XML 格式,本想說如此簡單的架構用 jQuery 很方便,結果卻不如我預期的順遂。

... 繼續閱讀 ...

啟動 ASP.NET 偵錯模式的另一種比按下 F5 還快的方式

大部分人在測試 ASP.NET 程式時,大多按下 F5 (開始偵錯)(Start Debugging) 進入 ASP.NET 偵錯模式,不過我個人覺得這個程序非常的慢,所以大多不會直接按下 F5,而是先用 Ctrl + F5 直接看執行的結果,速度會快很多,因為大部分時候只是看執行結果,並沒有設定中斷點,無須進入偵錯模式。我之前曾經提過兩篇(這篇 & 這篇)在 Visual Studio 中關於 Attach to Process 的文章,所以當我需要除錯時才會利用 Attach to Process 將 WebDev.WebServer.EXE 程序附加上去,就可以進入偵錯模式了。

... 繼續閱讀 ...

詳細解說幾個建置網站時常用的編碼方法

每次有新的開發人員進公司,在開發網站的時候幾乎都會遇到「不知道應該在什麼時候要選用什麼編碼的狀況」,大部分的初學者甚至根本不知道何謂編碼(Encode),而我也面試過好幾位在業界工作多年的工程師,有些也無法精確說明應該在什麼時候要選用什麼編碼,甚至有人說「編碼做什麼?我沒編碼也沒發生過錯誤啊!」。所以我想有必要特別寫一篇文章詳述各種常用的編碼方法與使用情境。

... 繼續閱讀 ...

網站部署可考慮使用 Google AJAX Libraries API 載入 JS

Google 提供的 AJAX Libraries API 其實是一個內容散佈網路(CDN, Content Delivery Network),這裡掛載了許多知名的 Open Source JavaScript 函示庫,目前支援有 jQuery, jQuery UI, Prototype, script_aculo_us, MooTools, 與 Dojo 等各版本。而使用 Google 提供的 AJAX Libraries API 最大的好處在於使用 Google 提供之高速、穩定的 CDN 網路存取這些網路知名的 JavaScript 函示庫。

... 繼續閱讀 ...

介紹好用元件:Microsoft Chart Controls for .NET 3.5

在 Web 環境製作圖表(Chart)通常不是一件容易的事,幾年前我就有看到 Dundas 公司開發出一系列非常優秀的圖表元件,只是光購買 for ASP.NET 的元件價格就要 US$699,說貴不貴、說便宜也不是很便宜。但在去年年中的(2007/6/4)時候微軟購買了 Dundas 公司所有的 Dundas Data Visualization 元件版權,並整合進 SQL Server 2008  的 Reporting Services 中(新聞稿)。

... 繼續閱讀 ...

推薦好網站與工具:Microsoft Web Platform

又有好東西要推薦給各位了,微軟最近推出了一個新網站 Microsoft Web Platform,這網站將會集合許多微軟跟 Web 相關的文章、活動、資源、最新消息、與工具等等,看網址 ( /web ) 就知道會是一個重要的 Web 技術入口網站。因為 Web 環境過於複雜,有時後若要讓 IT 人員安裝好整個環境,倒真的是有點難度,因此網站一開站就推出了一套 Microsoft Web Platform Installer 工具,可以讓 IT 人員輕鬆的安裝所有 Web 的執行環境與 Web 開發環境,這套 Installer 工具包括許多套件,例如:

... 繼續閱讀 ...