在先前的 Akka.NET 直播中有提到一個原則「訊息(Message)是不可變的」,剛好 C# 9 的新語法 init 跟 record,可以輔助我們更方便地建立不可變物件,我們就來一起看一下這兩個新語法怎麼使用?
2021-05-29
在先前的 Akka.NET 直播中有提到一個原則「訊息(Message)是不可變的」,剛好 C# 9 的新語法 init 跟 record,可以輔助我們更方便地建立不可變物件,我們就來一起看一下這兩個新語法怎麼使用?
這是無意中發現的一個語法,它的使用情境是這樣的,如果我們有一個型別是自訂類別的屬性,並且在建構式中有針對該屬性做初始化,在初始化後想要接著修改該屬性中裡面的屬性值,C# 的 Object Initializer 有一個簡便的語法 Xyz = { ... }
。
上一篇提到我們可以把 ASP.NET Core Feature Flags 的設定,儲存在 Azure App Configuration(應用程式組態)裡面,現在再進階一點,我們可以實作 IFeatureDefinitionProvider 建立一個 Feature Definition Provider,讓 Feature Flags 的設定可以儲存在我們想要的地方。