The Will Will Web

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

分享一個在 .NET / C# / ASP.NET 中修改網址結構的好方法

我們有個常見的功能是限制使用者導向到 SSL 的網頁,這時我們就必須修改 HTTP 要求(Request)的網址到 https 的網址,或是需要修改網址的部分結構(例如 schema 或 port 等等),這時我們可能會用字串取代 String.Replace 方法 (如下範例),但這種寫法有很多瑕疵,以下是本篇文章的分析報導。

... 繼續閱讀 ...

分享一個常用的 System.Web.HttpRuntime.Cache 程式碼

在 Web 的世界裡活用 Cache 已經是不可或缺的觀念與技能之一,即便不是 Web 環境,Cache 也是非常重要的技能之一,所以我們現在的專案之中也有越來越多案子需要實做 Cache 機制,以下分享我們常用的 Cache 相關程式碼。

... 繼續閱讀 ...

Mono 2.4.2 已釋出並正式支援 ASP.NET MVC 與 C# Shell

Mono 2.4.2 已釋出,除了修正超過 150 的 Bugs 外,這一版還有個特點就是正式支援 ASP.NET MVC 的執行環境,以及 C# Shell 可以讓你把 C# 程式碼檔 Shell Script 來執行,而這兩個功能正是我想要的。

... 繼續閱讀 ...

如何利用 .NET 檢查某「路徑字串」是檔案或目錄

這好像不是什麼有意義的題目,雖然我知道有 File.ExistsDirectory.Exists 可用,只是我昨天心血來潮想找找 .NET Framework 中是否有檢查某「路徑字串」是「檔案」或「目錄」的方法(Method),一開始先猜想 Path 類別是否有相關的 Method,但找不到。

... 繼續閱讀 ...

如何利用 .NET 對 byte[] 進行 Reguar Expression 比對

記得以前在寫 Perl 或 PHP 時都可以直接用內建的 Regular Expression 功能直接比對二進位的字串內容,但到了 .NET 就不知道怎麼做了,因為當你使用 System.Text.RegularExpressions 命名空間所接受的輸入參數只有 String 型別,並不接受 byte[] 位元陣列。

... 繼續閱讀 ...

如何讓 Windows Service 應用程式在特定條件下自行停止

之前分享過 "如何透過 C# 啟動、停止、重新啟動 Windows 服務",這是從一個「程序外」的角度來談如何透過 C# 控制服務狀態。但是最近卻遇到需要在執行中的 Windows Service 應用程式中在特定運作條件下需自行停止的情況,也就是「程序本身」要「自我了結」的狀況,我真的試了好久才試出來。

... 繼續閱讀 ...

如何透過 .NET 送出一個包含 S/MIME 簽章的郵件

加入憑證簽章的郵件必須使用 S/MIME 標準,之前為了讓系統發出的郵件可以加入憑證簽章費了好一番功夫,有鑑於此需求非常罕見,在國內我是沒找到任何相關資料,即便在國外的網站相關資訊也很少,所以特此紀錄一下當時研究的過程。

... 繼續閱讀 ...

.NET 執行外部程式如何設定 Timeout 時間 (同步/非同步)

在 .NET 裡要執行外部程式我們都是用 System.Diagnostics.Process.Start 方法,不過我們在執行外部程式時經常會需要設定 Timeout 逾時時間,以確保原本的主程式能夠繼續運作下去。除此之外,我今天也會介紹「同步」與「非同步」的 Timeout 撰寫技巧。

... 繼續閱讀 ...

如何透過 C# 啟動、停止、重新啟動 Windows 服務

由於最近都在研究 Setup Project,所以在安裝解除安裝 Windows 服務程式時都會需要透過自訂動作操作 Windows 服務的啟動或停止,今天我就來分享幾個透過 C# 對 Windows 服務啟動、停止、重新啟動的方法。

... 繼續閱讀 ...