The Will Will Web

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

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

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

... 繼續閱讀 ...

物件導向基礎:何謂類別(Class)?何謂物件(Object)?

每次有新人來面試,我都會問新人這個很基礎的程式開發問題,想聽看看來面試的人如何解釋這個每天朝夕相處的東西,但很難想像的是竟然有大部分的面試者都無法回答出讓我滿意的答案,不是支支吾吾的講不清楚,就是只能講出他們語法上的差別(錯誤觀念),但卻無法清楚且具體的描述何謂類別、何謂物件。

... 繼續閱讀 ...

介紹好用工具:ILMerge (將多的 .NET 組件合併成單一組件)

當 .NET 專案開發越來越多的情況下,通常會有一大堆組件的情況,微軟提供一套 ILMerge 免費工具可以協助你將多個組件合併成單一個 .NET 組件,有效減少部署檔案的數量以及增加部署的彈性。

... 繼續閱讀 ...

講解 SQL 連線字串中關於 Persist Security Info 參數的用途

可能許多人不知道資料庫連線參數 (Connection String) 中的 Persist Security Info 參數是做什麼用的,且用到的機會也很少,但我們這幾天就遇到了一個跟 Persist Security Info 參數有關的錯誤,特別分享一下處理的經驗。

... 繼續閱讀 ...

介紹好用工具:CAT.NET (靜態程式碼安全檢測工具)

市場上已經有許多類似的靜態程式碼分析軟體商業軟體,在這一期的 iThome 雜誌(第 405 期)就有介紹好幾套程式碼安全檢測軟體,像我就親自領教過阿碼科技CodeSecure™ 以及 FortifySource Code Analyzer 的威力,誤判是難免,但專業度倒是沒話說,對軟體品質與安全性絕對可大幅提昇。雖然這類商業軟體都所費不貲,微軟為了拯救龐大的開發人員,也不落人後推出了一套 Microsoft Code Analysis Tool .NET (CAT.NET) 工具。

... 繼續閱讀 ...

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

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

... 繼續閱讀 ...

在 .NET 中撰寫 String.Contains 方法時容易犯的錯誤

.NET Framework 中的 String.Contains 方法從 .NET 2.0 時就開始出現,但你可能從未想過這個問題,這個簡單的 String.Contains 方法到底有什麼該注意的地方呢。先考各位一段簡單的程式碼,並先仔細想想如果以下程式碼執行完後,變數 b 的值應該是 True 或 False 呢?

... 繼續閱讀 ...

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

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

... 繼續閱讀 ...

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

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

... 繼續閱讀 ...