由於我以前曾經好長一段時間都只碰 LAMP ( Linux, Apache, MySQL, PHP ),也因為這樣之前曾經接觸過 Apache 的一個很有名的模組 mod_rewrite,由於這個模組強大的 URL Rewriting 功能,讓你很輕易的就可以完成 SEO 的規劃,或是設定條件阻擋 Hot-linking 的要求,甚至於還可以做到類似 Reverse Proxy 的效果。這樣的功能在 ASP.NET 中當然也少不了,不過讓我高興的是,竟然有人實做出一個跟 mod_rewrite 設定格式幾乎相容的版本。
... 繼續閱讀 ...
我長久一來一直苦惱於不知道如何訂定 C# 編碼規範(Coding Standard),雖然很久以前我就有看到微軟的開發類別庫的設計方針文件,不過內容過於嚴謹,況且我們的工程師大多是開發 ASP.NET 居多,並不常開發類別庫(Class Libray),所以我若用 MSDN 的開發類別庫的設計方針要求工程師們可能會有點不切實際。
... 繼續閱讀 ...
程式碼存取安全性(CAS, Code Access Security)是 .NET Framework 中非常重要的一部份,不過我發現大部分的 ASP.NET 開發人員並不清楚 CAS 是什麼,因為在開發 ASP.NET 的時候很少有機會去碰觸到這一塊,最近我們工程師在用 .NET 寫一個 COM 元件時就發生了 CAS 的權限問題,導致程式無法正常執行的情況。
... 繼續閱讀 ...
在這 Web 2.0 的時代,JSON 這個資料傳輸格式已經越來越多人在使用了,今年 5 月份 Json.NET 才剛發佈 2.0 版,在前幾天(8/25)又發佈 3.0 版,這個新版本除了修正許多所有已知的 Bugs 之外,還添加了許多新功能與特性,其中包括:
... 繼續閱讀 ...
前幾天在 Reference Source Code Center Team Blog 已經公告 .NET Framework 3.5 SP1 的部分原始碼已經掛到 Reference Source Code Center (RSCC) 伺服器了,這代表各位可以在 Visual Studio 2008 中針對這些已開放的組件進行原始碼偵錯,另一方面也可以從 .Net Framework Library 學習到更深的技術細節。
... 繼續閱讀 ...
FxCop 是一種靜態程式碼分析工具,主要是用來分析採用 .NET 技術開發的組件(Assembly)品質,其中分析的規則也多達上百條(FxCop 1.36 預設有 197 種規則),並依照不同的領域分門別類,大致有以下類別:
... 繼續閱讀 ...
前天我有提到如何在 Visual Studio 中利用 Attach to Process 功能可以對任意執行中的程式進行除錯。但有時後程式一啟動就立即發生錯誤,導致程式難以除錯,遇到這種情況其實在 Visual Studio 也是有解的!
... 繼續閱讀 ...
我們其實可以透過許多工具取得 .NET 應用程式執行時在記憶體中的資料,例如:WinDbg 或 Debug Diagnostic Tool。而當你在 .NET 程式中需要將一些較機密的資料暫存在變數(物件)時,若單純的使用 System.String 類別建立執行個體(Instance)儲存資料,就很容易被一些除錯工具或傾印(dump)工具取得原始資料,原因是 System.String 類別是不變的(immutable),且當不再需要它時也無法透過程式排程進行記憶體回收。所以當你使用 System.String 類別儲存文字內容在記憶體中,就很難保證在物件不用了之後能夠即時在記憶體中刪除,這樣的程式就有被資訊揭露(Information Disclosure)的安全風險。
... 繼續閱讀 ...