SlideShare a Scribd company logo
Feature Toggle for .Net Core Apps on
Azure with Azure App Configuration
Feature Management
Kasun Kodagoda
Technical Lead | 99X Technology
https://kasunkodagoda.com
I am, Kasun Kodagoda
• In ♥ with Azure & Azure DevOps
• Active Blogger – https://kasunkodagoda.com
• Open Source Contributor - https://github.com/kasunkv
• Technical Lead
I Work For,
• Established in 2004
• Headquartered in Sri Lanka with offices in
Europe and Australia
• Providing high quality, high value Software
Product Engineering + R&D services
What Are Feature Flags?
A feature flag is a variable with a binary state
of on or off. The feature flag also has an
associated code block. The state of the feature
flag determines whether the code block runs or
not
Why Use Feature Flags?
• Reduce branching in your source control
• Feature development is hidden under feature flags, therefore safe to deploy to prod.
• Support incremental rollout of features
• Expose to certain percentage of users, get feedback, improve and fully expose.
• Testing in production
• Expose features to a certain segment of users, beta users, internal team. Get feedback
• Act as an instant kill switch
• Turn off features quickly to without redeploying.
• Selective activation of features
• Long term feature flags. E.g. enable features for certain browsers as browser support comes.
Microsoft.FeatureManagement Library
• Created by Azure team
• Built on .Net Core Configuration
• Supports any IConfiguration provider
• Supports feature flag lifetime management
• Simple on/off feature flags to complex conditional flags
• Supports creating custom feature filters
• Support for ASP.Net Core MVC applications
• Microsoft.FeatureManagement.AspNetCore library
• Extension points for Routing, Filters, Action, Middleware and Razor Views
Concepts
• Feature Flag
• Consists of 2 parts;
• Feature name
• List of feature filters
• Filter can be a simple or complex filter
• Can contain multiple feature filters
• Feature Filter
• Defines a scenario where feature should be enabled
• List of feature filters are traversed until one feature filter
evaluates for enabling the feature
• The rest of the filters are ignored
Let’s See it in Action
Microsoft.FeatureManagement.AspNetCore
Azure App Configuration
What is Azure App Configuration?
Azure App Configuration is service that allows
you to centrally managed application settings
and feature flags.
Why Use Azure App Configuration?
• Modern cloud applications are distributed
• multiple instances running across many geographic locations
• Managing application settings across these distributed instances is
hard
• difficult to troubleshoot issue when it comes up
• Having the stored in a centralized location will solve this issues
• Best practice to separate application settings from application code
Azure App Configuration Features
• Full Managed Service
• Flexible Key Representation
• Key Tagging with Labels
• Point In Time Snapshots for Settings
• Feature Flag Management UI
• Encryption at Rest and on Transit
• Support for Managed Identities
App Configuration Feature Management
• Define simple and conditional feature flags
• Simple Flags – On/Off
• Conditional Flags – On by default with feature filters
• Backed by App Configuration
• Define labels for multi-dimensional feature flags
• Same feature flag name
• Different values depending on Label
• Dedicated Feature Flag Management UI
Let’s See it in Action
Azure App Configuration
Thank You :)
Any Questions? ;)
Sample Code
https://github.com/kasunkv/microsoft-feature-management-using-azure-app-configuration-example
Slide Deck
https://www.slideshare.net/KasunKodagoda1
Blog Posts
https://kasunkodagoda.com/tag/feature-management/
Connect With Me
Twitter: https://twitter.com/kasun_kodagoda
Facebook: https://www.facebook.com/kasun.kodagoda
LinkedIn: https://www.linkedin.com/in/kasunkodagoda/
Blog: https://kasunkodagoda.com/
http://bit.ly/feat-mgt-azure

More Related Content

ODP
Kubernetes Architecture
PDF
Introduction to GitHub Actions
PDF
Adaptive AUTOSAR - The New AUTOSAR Architecture
PPTX
Kubernetes for Beginners: An Introductory Guide
PDF
Intro to GitOps & Flux.pdf
PDF
Deep dive into Kubernetes Networking
PPTX
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
PDF
What's Coming in CloudStack 4.19
Kubernetes Architecture
Introduction to GitHub Actions
Adaptive AUTOSAR - The New AUTOSAR Architecture
Kubernetes for Beginners: An Introductory Guide
Intro to GitOps & Flux.pdf
Deep dive into Kubernetes Networking
Continuous Delivery using AWS CodePipeline, AWS Lambda & AWS ElasticBeanstalk
What's Coming in CloudStack 4.19

What's hot (20)

PPTX
Feature flag launchdarkly
PDF
OpenStack Tutorial
PDF
Kubernetes Introduction
PDF
What's Coming In CloudStack 4.18
PDF
News And Development Update Of The CloudStack Tungsten Fabric SDN Plug-in
PPTX
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
PPTX
Cloud Native Apps with GitOps
PPTX
Kubernetes PPT.pptx
PDF
What CloudStackers Need To Know About LINSTOR/DRBD
PDF
(Draft) Kubernetes - A Comprehensive Overview
PDF
Get started with gitops and flux
PPSX
CI-CD Jenkins, GitHub Actions, Tekton
PPTX
eBay's private Cloud Journey
PDF
Room 3 - 4 - Lê Quang Hiếu - How to be a cool dad: Leverage DIY Home Automati...
PDF
Service Mesh on Kubernetes with Istio
PPT
Android and android versions
PPTX
Introduction to Docker - 2017
PDF
Kubernetes 101
PDF
Kubernetes - introduction
Feature flag launchdarkly
OpenStack Tutorial
Kubernetes Introduction
What's Coming In CloudStack 4.18
News And Development Update Of The CloudStack Tungsten Fabric SDN Plug-in
Room 2 - 4 - Juncheng Anthony Lin - Redhat - A Practical Approach to Traditio...
Cloud Native Apps with GitOps
Kubernetes PPT.pptx
What CloudStackers Need To Know About LINSTOR/DRBD
(Draft) Kubernetes - A Comprehensive Overview
Get started with gitops and flux
CI-CD Jenkins, GitHub Actions, Tekton
eBay's private Cloud Journey
Room 3 - 4 - Lê Quang Hiếu - How to be a cool dad: Leverage DIY Home Automati...
Service Mesh on Kubernetes with Istio
Android and android versions
Introduction to Docker - 2017
Kubernetes 101
Kubernetes - introduction
Ad

Similar to Feature Toggle for .Net Core Apps on Azure with Azure App Configuration Feature Management (20)

PPTX
Using feature flags in an ASP.NET Core app on Azure
PPTX
Centralized Configuration Management for the Cloud with Azure App Configuration
PPTX
Festive Tech Calendar 2022
PDF
An Introduction to Feature Flags
PDF
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
PDF
Feature Flags. Reducing risks during shipping changes/
PDF
Azure App configuration
PDF
Launch safely with Feature Flags
PDF
Tell Me Quando - Implementing Feature Flags
PDF
Secretsth-Azure-KeyVault-and-Azure-App.pdf
PDF
Secretsth-Azure-KeyVault-and-Azure-App.pdf
PPTX
Centralized configuration with azure app configuration
PDF
A look into AB testing
PDF
Feature Flags.pdf
PDF
Azure Meetup: Keep your secrets and configurations safe in azure!
PPTX
Debugging and Interacting with Production Applications - MS Online Tech Forum
PDF
Learn Cloud-Native .NET: Core Configuration Fundamentals with Steeltoe
PDF
Azure Functions - the evolution of microservices platform or marketing gibber...
PDF
Azure-based hybrid application
PDF
Design and Configure Azure App Service Web Apps
Using feature flags in an ASP.NET Core app on Azure
Centralized Configuration Management for the Cloud with Azure App Configuration
Festive Tech Calendar 2022
An Introduction to Feature Flags
Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений"
Feature Flags. Reducing risks during shipping changes/
Azure App configuration
Launch safely with Feature Flags
Tell Me Quando - Implementing Feature Flags
Secretsth-Azure-KeyVault-and-Azure-App.pdf
Secretsth-Azure-KeyVault-and-Azure-App.pdf
Centralized configuration with azure app configuration
A look into AB testing
Feature Flags.pdf
Azure Meetup: Keep your secrets and configurations safe in azure!
Debugging and Interacting with Production Applications - MS Online Tech Forum
Learn Cloud-Native .NET: Core Configuration Fundamentals with Steeltoe
Azure Functions - the evolution of microservices platform or marketing gibber...
Azure-based hybrid application
Design and Configure Azure App Service Web Apps
Ad

More from Kasun Kodagoda (14)

PPTX
Using GitHub Actions to Deploy your Workloads to Azure
PPTX
Get On Top of Azure Resource Security Using Secure DevOps Kit for Azure
PPTX
Serverless in the Azure World
PPTX
Role of Test Automation in Modern Software Delivery Pipelines
PPTX
Demystifying Azure Certifications
PPTX
Good Bye Credentials in Code, Welcome Azure Managed Identities
PPTX
DevOps: Why Should We Care?
PPTX
Introduction to Microsoft Azure
PPTX
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
PPTX
Building a Continuous Delivery Pipeline With Visual Studio
PPTX
Going Serverless with Azure Functions #1 - Introduction to Azure Functions
PPTX
Making Money with Technology
PPTX
Better End-to-End Testing with Page Objects Model using Protractor
PPTX
Monetizing Windows Phone Apps
Using GitHub Actions to Deploy your Workloads to Azure
Get On Top of Azure Resource Security Using Secure DevOps Kit for Azure
Serverless in the Azure World
Role of Test Automation in Modern Software Delivery Pipelines
Demystifying Azure Certifications
Good Bye Credentials in Code, Welcome Azure Managed Identities
DevOps: Why Should We Care?
Introduction to Microsoft Azure
Building Custom Visual Studio Team Service Build Tasks With VSTS DevOps Task SDK
Building a Continuous Delivery Pipeline With Visual Studio
Going Serverless with Azure Functions #1 - Introduction to Azure Functions
Making Money with Technology
Better End-to-End Testing with Page Objects Model using Protractor
Monetizing Windows Phone Apps

Recently uploaded (20)

PDF
Nekopoi APK 2025 free lastest update
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Digital Strategies for Manufacturing Companies
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
top salesforce developer skills in 2025.pdf
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
history of c programming in notes for students .pptx
PDF
Understanding Forklifts - TECH EHS Solution
PDF
System and Network Administraation Chapter 3
PPTX
Online Work Permit System for Fast Permit Processing
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Softaken Excel to vCard Converter Software.pdf
PPT
Introduction Database Management System for Course Database
PDF
PTS Company Brochure 2025 (1).pdf.......
Nekopoi APK 2025 free lastest update
Which alternative to Crystal Reports is best for small or large businesses.pdf
Digital Strategies for Manufacturing Companies
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
Operating system designcfffgfgggggggvggggggggg
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Adobe Illustrator 28.6 Crack My Vision of Vector Design
top salesforce developer skills in 2025.pdf
ManageIQ - Sprint 268 Review - Slide Deck
How to Choose the Right IT Partner for Your Business in Malaysia
history of c programming in notes for students .pptx
Understanding Forklifts - TECH EHS Solution
System and Network Administraation Chapter 3
Online Work Permit System for Fast Permit Processing
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Design an Analysis of Algorithms II-SECS-1021-03
Softaken Excel to vCard Converter Software.pdf
Introduction Database Management System for Course Database
PTS Company Brochure 2025 (1).pdf.......

Feature Toggle for .Net Core Apps on Azure with Azure App Configuration Feature Management

  • 1. Feature Toggle for .Net Core Apps on Azure with Azure App Configuration Feature Management Kasun Kodagoda Technical Lead | 99X Technology https://kasunkodagoda.com
  • 2. I am, Kasun Kodagoda • In ♥ with Azure & Azure DevOps • Active Blogger – https://kasunkodagoda.com • Open Source Contributor - https://github.com/kasunkv • Technical Lead I Work For, • Established in 2004 • Headquartered in Sri Lanka with offices in Europe and Australia • Providing high quality, high value Software Product Engineering + R&D services
  • 3. What Are Feature Flags? A feature flag is a variable with a binary state of on or off. The feature flag also has an associated code block. The state of the feature flag determines whether the code block runs or not
  • 4. Why Use Feature Flags? • Reduce branching in your source control • Feature development is hidden under feature flags, therefore safe to deploy to prod. • Support incremental rollout of features • Expose to certain percentage of users, get feedback, improve and fully expose. • Testing in production • Expose features to a certain segment of users, beta users, internal team. Get feedback • Act as an instant kill switch • Turn off features quickly to without redeploying. • Selective activation of features • Long term feature flags. E.g. enable features for certain browsers as browser support comes.
  • 5. Microsoft.FeatureManagement Library • Created by Azure team • Built on .Net Core Configuration • Supports any IConfiguration provider • Supports feature flag lifetime management • Simple on/off feature flags to complex conditional flags • Supports creating custom feature filters • Support for ASP.Net Core MVC applications • Microsoft.FeatureManagement.AspNetCore library • Extension points for Routing, Filters, Action, Middleware and Razor Views
  • 6. Concepts • Feature Flag • Consists of 2 parts; • Feature name • List of feature filters • Filter can be a simple or complex filter • Can contain multiple feature filters • Feature Filter • Defines a scenario where feature should be enabled • List of feature filters are traversed until one feature filter evaluates for enabling the feature • The rest of the filters are ignored
  • 7. Let’s See it in Action Microsoft.FeatureManagement.AspNetCore
  • 9. What is Azure App Configuration? Azure App Configuration is service that allows you to centrally managed application settings and feature flags.
  • 10. Why Use Azure App Configuration? • Modern cloud applications are distributed • multiple instances running across many geographic locations • Managing application settings across these distributed instances is hard • difficult to troubleshoot issue when it comes up • Having the stored in a centralized location will solve this issues • Best practice to separate application settings from application code
  • 11. Azure App Configuration Features • Full Managed Service • Flexible Key Representation • Key Tagging with Labels • Point In Time Snapshots for Settings • Feature Flag Management UI • Encryption at Rest and on Transit • Support for Managed Identities
  • 12. App Configuration Feature Management • Define simple and conditional feature flags • Simple Flags – On/Off • Conditional Flags – On by default with feature filters • Backed by App Configuration • Define labels for multi-dimensional feature flags • Same feature flag name • Different values depending on Label • Dedicated Feature Flag Management UI
  • 13. Let’s See it in Action Azure App Configuration
  • 14. Thank You :) Any Questions? ;)
  • 15. Sample Code https://github.com/kasunkv/microsoft-feature-management-using-azure-app-configuration-example Slide Deck https://www.slideshare.net/KasunKodagoda1 Blog Posts https://kasunkodagoda.com/tag/feature-management/ Connect With Me Twitter: https://twitter.com/kasun_kodagoda Facebook: https://www.facebook.com/kasun.kodagoda LinkedIn: https://www.linkedin.com/in/kasunkodagoda/ Blog: https://kasunkodagoda.com/ http://bit.ly/feat-mgt-azure

Editor's Notes

  • #3: ]
  • #4: ]
  • #5: Modern cloud applications are distributed, they can have multiple instances running across many geographic locations Managing application settings across these distributed instances is difficult Its difficult to troubleshoot issue when it comes up Having the stored in a centralized location will solve this issues
  • #6: Modern cloud applications are distributed, they can have multiple instances running across many geographic locations Managing application settings across these distributed instances is difficult Its difficult to troubleshoot issue when it comes up Having the stored in a centralized location will solve this issues
  • #7: Modern cloud applications are distributed, they can have multiple instances running across many geographic locations Managing application settings across these distributed instances is difficult Its difficult to troubleshoot issue when it comes up Having the stored in a centralized location will solve this issues
  • #10: ]
  • #11: Modern cloud applications are distributed, they can have multiple instances running across many geographic locations Managing application settings across these distributed instances is difficult Its difficult to troubleshoot issue when it comes up Having the stored in a centralized location will solve this issues