The Will Will Web

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

今天成功的利用 WinDbg 分析與解決程式 Hang 住的狀況

我們之前有一支 Console Program 程式是用來收取 POP3 伺服器中的郵件,並在解析郵件內容後進行分析與後續處理,不過三不五時程式都會 Hang 住不動,導致分析作業無法進行下去。又因為我們在開發環境一直都很正常的執行,程式是到正式主機才 Hang 住的,所以一直很苦惱到底要怎麼解決。

... 繼續閱讀 ...

在撰寫 LINQ to SQL 時應注意的幾個小地方

這陣子的專案幾乎每個都會用到 LINQ to SQL 技術,但我發現有些人在撰寫程式碼的時候有些不太好的習慣,會對資料庫進行一些多餘的查詢動作或建立多餘的 DataContext,以下是我最近觀察到的幾種狀況與建議的寫法:

... 繼續閱讀 ...

亂數產生器:Random 與 RNGCryptoServiceProvider

一般眾所周知的亂數的產生應該都會使用 Random 類別,而在大部分的情境中使用 Random 類別其實是足夠用的,例如說你想要透過亂數選取目錄中的照片輸出到網頁中,或是將篩選出來的資料亂數排序後輸出到檔案(例如說抽獎程式)。

... 繼續閱讀 ...

好用的 Linq Samples and the Sample Query Explorer

上次在微軟 Windows Server 2008 與 Visual Studio 2008聯合上市發表會看到有講師執行一個 LINQ Project Sample Query Explorer,覺得很好用,因為他把所有 LINQ 的範例放在程式裡,點選之後就會出現語法,還可以執行,真是學習 LINQ 的絕佳教材。

... 繼續閱讀 ...

避免 DropDownList 指定無效的 SelectedValue

去年有寫過一篇 DropDownList 在作 DataBind 的時候發生 Exception,是還蠻實用的,不過原則上來說程式盡量不要讓他發生 Exception 比較好,因為丟出例外事件是十分消耗系統資源的,今天另外分享另一個小技巧。

如果原本指定給 SelectedValue 的程式長這樣:

DropDownList1.SelectedValue = Request.QueryString["ID"];

建議可以改成這樣:

... 繼續閱讀 ...

好用的 LINQ to CSV library

在做「匯出資料」功能的時候常會使用到 CSV ( Comma Separated Value ) 這種檔案格式,雖然格式並不複雜,但有好用的 Library 當然也能夠更省事啦。

... 繼續閱讀 ...

ASP.NET 如何將目前的 Cache 物件全部清空

最近在測試一個大量做 Cache 的網站,測試的過程中想說要先將 Cache 物件中的資料全部清空,才發現原來 ASP.NET 中內建的 Cache 物件 ( System.Web.Caching.Cache ) 並沒有支援 Clear() 方法,無法用一行把所有的 Cache 物件清空,然而我也嘗試看有沒有 Cache.Keys 物件,好讓我用 foreach 取得所有 Cache 的 Keys 進而一個一個刪除,結果也是沒有!原來要用以下這段程式碼才能將所有 Cache 中的 Keys 全部取出並逐一刪除:

... 繼續閱讀 ...