ASP.NET | The Will Will Web

The Will Will Web

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

如何快速查詢 web.config 中各項設定參數的預設值

昨天有朋友問我一個 ASP.NET 的問題,他說他利用 FormsAuthentication.Authenticate 方法驗證使用者帳號、密碼,而且在 web.config 中設定了使用者的登入帳號、密碼,密碼直接用「明碼」表示,但卻怎樣都無法登入成功,這時我就想到應該是他忽略 web.config 中 credentials 的預設屬性值。

... 繼續閱讀 ...

如何用 ASP.NET 實做簡單的圖片驗證機制(Captcha)

我之前推薦過一套 reCAPTCHA 線上服務非常的好用,不止可以有效阻擋程式機器人對網頁進行灌水,還可以對英文不好圖像解析能力不夠好的人進行阻擋,說真的,有時後他們會模糊到有些字我也無法解讀,之前我們就有客戶抱怨說 reCAPTCHA 提供的驗證圖實在太不清楚了,希望我們提供一個簡易的版本,否則他們網站的使用者可能會不願意使用他們的網站,因此我就寫了一個簡易版的 Captcha 程式。

... 繼續閱讀 ...

如何讓 ASP.NET 依據瀏覽器指定的語系自動選用資源檔

當要利用 ASP.NET 開發多國語系的網站時,我們通常都會利用資源檔 (Resource File; *.resx) 定義網頁中會用到的文字,而且每一種語系就可以定義一組翻譯資料。不過若要讓 ASP.NET 可以讓使用者在第一次進入網站時自動選取該使用者預設的語系進行顯示是再好不過的了,只是 ASP.NET 在預設的情況下這個特性是關閉的。

... 繼續閱讀 ...

介紹好用工具:Managed Stack Explorer

微軟最近推出了一套新工具叫做 Managed Stack Explorer ( MSE ) 可以分析任何使用 .NET 2.0 以上的應用程式執行過程的所有 Call Stack,他可以詳實的紀錄 .Net 應用程式執行的過程,包括在 .Net 執行時所有的執行緒(Threads),最主要的功用可以用來快速偵測 .Net 程式掛掉 (Hang) 的執行緒或特定類別的特定方法(Method)。除此之外,還可以偵測 IIS6 的 Worker Process (w3wp.exe) 上所有執行中的 ASP.NET 應用程式,所以包含 ASP.NET 頁面 Hang 住的情況也能夠協助分析問題。

... 繼續閱讀 ...

存取被拒絕,因此無法開始監視 \\x.x.x.x\XXX 的變更 (IIS7)

我去年曾經寫過一篇關於『存取被拒絕,因此無法開始監視 \\192.168.x.x\XXX 的變更 』的文章,當時是寫在 IIS6 的時候如何正確設定虛擬目錄,並讓 ASP.NET 網站能夠正常運作。今天我正式遇到 IIS7 的例子,並藉此分享 IIS7 如何正確設定目錄在 UNC 下的虛擬目錄(Virtual Directory)

... 繼續閱讀 ...

CryptographicException: 控制碼無效(The handle is invalid)

我前天寫的【ASP.NET 使用 X509Certificate2 類別匯入憑證檔時發生錯誤 】文章是說明有關於匯入憑證時發生的問題,雖然已經可以匯入憑證到本機電腦(Local Computer)但這並不代表你可以使用該憑證進行簽章或加解密的動作,運氣不好的話你會得到 控制碼無效The handle is invalid 的錯誤。

... 繼續閱讀 ...

ASP.NET 使用 X509Certificate2 類別匯入憑證檔時發生錯誤

我最近因為需要在 ASP.NET 網站發信,而且發出的電子郵件必須透過 S/MIME 憑證進行簽章,在本機測試的時候都沒有問題,但是一旦將程式部署到客戶端的主機時就會發生『系統找不到指定的檔案 (The system cannot find the file specified.)』的錯誤,檔案明明就有完整的讀取權限,但錯誤訊息卻是「系統找不到指定的檔案」?我已經被這個問題困擾好幾個星期了。

... 繼續閱讀 ...

Web Deployment Project 如何自訂 AfterBuild 目標(VS2008)

在我上次介紹 Web Deployment Projects 的文章中有提到你可以自行修改 Web Deployment Project ( WDP ) 的專案檔( *.wdproj ) 的內容,因為此專案檔實際上是透過 MSBuild 編譯執行的,你可以自行擴充 BeforeBuild, BeforeMerge, AfterMerge, 或 AfterBuild 目標,不過當 WDP for VS2005 升級到 WDP for VS2008 時有做出一些調整,會導致有些自訂動作怎麼寫都不成功。

... 繼續閱讀 ...