微軟Azure 團隊開發的 功能管理 (Feature Management)
包 Microsoft.FeatureManagement可用於實現
html功能開關,能夠經過
功能開關
特性動態的改變應用程序的行爲而不須要改變任何的業務邏輯代碼。關於功能開關的更多功能請看Edi Wang的B站視頻:
前端這篇文章的重點是介紹如何在Blazor WebAssembly項目中實現功能開關。
經過 NuGet 安裝 Microsoft.FeatureManagement
,可經過 Visual Studio 2019 下的 NuGet Package Manager 可視化管理界面 或者 經過 .NET CLI 命令行工具輸入以下命令。git
dotnet add package Microsoft.FeatureManagementgithub
爲了可以在項目中用上 功能管理
,須要在 ConfigureServices
方法下進行 service 注入,以下代碼所示:app
有一點要注意:功能管理
中的 功能開關
讀取的值來自於配置文件,若是你想讓 功能開關
的值來源於 Configuration 文件的不一樣節點,必須在 service 註冊時單獨指定一下。工具
爲了可以在 Blazor Wassembly中用上 功能管理(feature management)
,須要經過依賴注入的方式將其注入到 Blazor 組件中:spa
使用時調用IFeatureManager 接口的方法IsEnabledAsync,代碼以下:命令行
用法很簡單吧,能夠看到 .NET 的對 功能管理
提供了開箱即用的支持, 這確實是一個很是實用的特性,更多關於該 知識點 的介紹,可參考官網:https://docs.microsoft.com/en-us/azure/azure-app-configuration/use-feature-flags-dotnet-core
code
從這篇小文章你能夠感覺到使用blazor 能夠將.NET的整個生態融入到前端,這樣的blazor 是爲你賦能。文章裏面的截圖代碼參見:https://github.com/geffzhang/Abp.BootstrapTheme
視頻