名家專欄

[廚餘回收] 關於 ASP.NET MVC 中 OutputCache 的 VaryByParam 屬性有一個不盡善盡美的地方

這天在追查為何 A 客戶的訂單會出貨到 B 客戶哪裡去? 於是我看到了下面這段程式碼:

在 Login 的 Action 上面被加了 OutputCacheAttribute,Duration 屬性被設成 3,其中還用到了 VaryByParam 屬性,我猜寫這段 Code 的工程師應該是想要為每個登入的帳號做 OutputCache,這樣設定沒有問題,問題出在 HTTP Request 的發送內容。

...繼續閱讀 »
on supershowwei

再論 Delegate 與 Lambda

Delegate 和 Lambda 的概念在 2008 年就出來了,Delegate 更是最早最早 (.NET 1.0) 時就已經有的概念,隨著技術的演進,Lambda 讓 Delegate 變得更好使用也更容易發揮,但似乎有些人不這麼認為,所以我還是再講一些吧。

...繼續閱讀 »
on regionbbs

[廚餘回收] 中了一個 C# 模式比對(Pattern Matching)var 的陷阱

C# 從 7.0 開始加入了模式比對(Pattern Matching),最大的改變是將 switch 從常數比對中解放,讓 switch 可以比對運算式,到了 C# 8.0 更猛了,微軟弄了一個遞迴模式比對(Recursive Pattern Matching),大括號 "{}" 及小括號 "()" 寫到你不要不要的,但是模式比對裡面藏了一個 var 的陷阱,我就踩中了。

...繼續閱讀 »
on supershowwei

Clean Coder:DI 與 AOP 進階實戰,202001 第三梯次

這門培訓會從物件導向的基本,以解決實務問題與需求為出發點,深入淺出帶著大家了解,為何我們的系統設計需要使用 interface,為何需要依賴注入。

在沒有依賴注入框架的協助下,你該怎麼用基本原則來解決耦合過高的問題。怎麼應用設計模式來幾解決複雜度過高的設計問題。接著說明,我們可以透過依賴注入框架來幫助我們更方便地處理哪些繁瑣的處理。

帶著大家手把手,把 legacy code 重構成乾淨的設計,如何較無痛地引入依賴注入與 AOP 設計,讓你具備基本的軟體架構設計能力,從此不再為擴充性跟可測試性煩惱。

報名這裡去➟【202001 Clean Coder-DI與AOP進階實戰 報名表單

...繼續閱讀 »
on hatelove