單一職責原則(Single Responsibility Principle,SRP)
在CleanArchitecture中提到了SRP的定義:A module should have one, and only one, reason to change.書中的定義是「一個模組應該只有一個被改變的原因」。當某個模組會因為多個角色而改變,換句話說就是某個模組有多個「reason to change」時,則違反SRP。
Delegates 委派
我們可以把委派想像成是一個沒有內容的函式,可以被用來當作是某個函式的臨時替身,當我們決定好要用哪個函式時再將真正的函式變成委派實體,並呼叫委派實體以執行該函式。
HAVING語句
HAVING語句用來篩選聚合函數執行後的結果
Virtual
設定Virtual關鍵字後,允許衍生類別(Derived Class)覆寫(override)其狀態或行為。
驗證 ASP.NET Core 中的 Guid 屬性
在使用[Required]這個標籤進行 Guid 型態屬性的驗證時,原本預期沒有填入該欄位時會被檔下來,但用在 Guid 型態的屬性上居然沒效。本篇紀錄如何以「自訂驗證標籤」及「更改欄位型態」兩個方法來解決這個問題。
使用 C# 建立上傳檔案請求
使用 C# 建立上傳檔案請求
Race condition 的種類、成因與解決辦法
當多個程序同時存取同一個資源時,很可能會發生該資源在其他程序進行期間被進行更動,導致資料與預期的結果不同的問題。
Queued background tasks in ASP.NET Core
在實務上有時候會遇到某些需要花費大量時間執行的任務,像我就是在寫公司專案時遇到需要產生縮圖和轉檔的需求,若不想讓使用者一直轉圈圈等待的話,我們必須採用一些方法讓我們可以先回覆使用者,之後再來慢慢處理這些需求,在背景中讓這些任務排隊執行就是其中一個方法。