在使用 Model Binder 繫結資料模型時 (Entity Type) ,大部分情況都是非常方便的,可有效減少 Action 參數的用量,也可大幅降低程式複雜度。但是在我們之前的某個專案就採到一個 Model Binder 的地雷,這個地雷不是 ASP.NET MVC 的 Bug,而是一個開發時應注意的地方,採用標準的寫法準沒錯。
... 繼續閱讀 ...
Inversion of control (IoC) 與 Dependency injection (DI) 是我接觸 ASP.NET MVC 之後才注意到的一門學問,對其概念十分著迷,但由於中文資訊非常少且概念也有點抽象,所以遲遲沒有上手。上個週末花了不少時間研讀相關資料,並著手寫 Code 練習套用在 ASP.NET MVC 專案中,也算小有心得,特別將一些我看過的文章、資料整理一下,方便有心學習的人。
... 繼續閱讀 ...
雖然我之前已經寫過一篇【 推薦使用 Microsoft Anti-Cross Site Scripting Library V3.0 】文章,而且這次 Anti-XSS Library v3.1 也只有小幅新增功能,但這次新增的兩個方法(Methods)卻是我盼望許久的功能,終於被我給等到了。我覺得任何開發 ASP.NET Web 應用程式的人都應該注意並使用這一套強大的 Anti-XSS Library,絕對有助於提升你現有 Web 應用程式的安全性。
... 繼續閱讀 ...
昨天上了李智樺老師的真實世界的測試開發技術導論課程,感覺獲益良多,回來就馬上套用到 ASP.NET MVC 的測試專案自行練習一番,結果卻發現怎樣都找不到老師在課堂上展示的 Code Coverage 設定選項,以致於雖然可以測試但就是看不到 Code Coverage 的分析數據,以下就是設定啟用 Code Coverage 功能的說明。
... 繼續閱讀 ...
在專案開發初期,我們都會寫很多測試程式碼(Test Code)用來紀錄或顯示程式執行時期的狀態,雖然開發環境有中斷點 (Breakpoint) 可以使用,但程式部署到測試機或正式機時卻未必有開發工具可用,這時利用自己寫的測試程式碼就非常有用,但專案上線前若又需要把測試程式碼刪除頗為麻煩,今天我就打算分享一些很實務的偵錯開發技巧。
... 繼續閱讀 ...
預設的 ASP.NET MVC 專案在 Visual Studio 中建置 (Build) 時並不會對 Views 進行編譯,所以很有可能在 Views 中寫錯程式碼而不自知,甚至於有可能讓網站上線時掛掉。為了避免這個問題,我們必須手動設定專案檔讓建置時也一併編譯 Views 中所有網頁,讓開發人員得以儘早得知程式錯誤。
... 繼續閱讀 ...
在預設的情況下,利用 ASP.NET MVC 技術製作的網站會在 HTTP 回應標頭(Response Header)中包含您目前使用的 ASP.NET MVC 版本編號,雖然目前也只有一版 ( ASP.NET MVC 1.0 ) 沒什麼好隱藏的,不過若基於資安考量希望能隱藏 ASP.NET MVC 送出的版本編號時,就可以利用本篇講的這個小技巧。
... 繼續閱讀 ...
ASP.NET MVC 2 Preview 1 已經推出,新版多了 Templated Helpers 的概念,如果對熟悉 Dynamic Data 的人來說應該會覺得很熟悉,概念非常類似,這個功能讓 ASP.NET MVC 對 HTML 的操控能力又更上一層,有興趣的人可以閱讀 ASP.NET MVC 2 Preview 1 Release Note 或看看 Hanselminutes on 9 - ASP.NET MVC 2 Preview 1 with Phil Haack and Virtual Scott 影片,看 Phil Haack 如何用他的大螢幕(雙螢幕)展示 ASP.NET MVC 2 Preview 1 的新功能。
... 繼續閱讀 ...
微軟最近推出了 Microsoft Anti-Cross Site Scripting Library V3.0 正式版(RTM),但在國內似乎沒看到許多人提到這套函示庫,就我來觀察有幾點可能的原因:
... 繼續閱讀 ...