Skip to content

Instantly share code, notes, and snippets.

View kasunkv's full-sized avatar
💭
I may be slow to respond.

Kasun Kodagoda kasunkv

💭
I may be slow to respond.
View GitHub Profile
@kasunkv
kasunkv / appsettings.json
Created January 19, 2020 13:50
Using the MusicStore.Browser feature filter
{
...
"FeatureManagement": {
...
"Suggestion.User": {
"EnabledFor": [
{
@kasunkv
kasunkv / Startup.cs
Created January 19, 2020 13:44
Registering the custom IFeatureFilter implementation
namespace MusicStore.Web
{
public class Startup
{
...
public void ConfigureServices(IServiceCollection services)
{
...
@kasunkv
kasunkv / BrowserFilter.cs
Created January 19, 2020 13:09
Custom Implementation of IFeatureFilter
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
using Microsoft.FeatureManagement;
using System;
using System.Linq;
using System.Threading.Tasks;
namespace MusicStore.Web.FeatureManagement.Filters
{
@kasunkv
kasunkv / Startup.cs
Created January 19, 2020 06:30
Register Microsoft.TimeWindow feature filter in Startup.cs
using Microsoft.FeatureManagement;
using Microsoft.FeatureManagement.FeatureFilters;
namespace MusicStore.Web
{
public class Startup
{
...
public void ConfigureServices(IServiceCollection services)
@kasunkv
kasunkv / appsettings.json
Created January 19, 2020 06:28
Enabling Microoft.TimeWindow feature filter.
{
...
"FeatureManagement": {
...
"Suggestion.User": {
"EnabledFor": [
{
"Name": "Microsoft.TimeWindow",
"Parameters": {
@kasunkv
kasunkv / Startup.cs
Created January 19, 2020 06:00
Registering Percentage Filter in ConfigureServices()
using Microsoft.FeatureManagement;
using Microsoft.FeatureManagement.FeatureFilters;
namespace MusicStore.Web
{
public class Startup
{
...
public void ConfigureServices(IServiceCollection services)
@kasunkv
kasunkv / appsettings.json
Created January 19, 2020 05:56
Enabling Microsoft.Percentage feature filter
{
...
"FeatureManagement": {
...
"Suggestion.User": {
"EnabledFor": [
{
"Name": "Microsoft.Percentage",
@kasunkv
kasunkv / appsettings.json
Created January 19, 2020 05:16
Enable AlwaysOn feature filter.
{
...
"FeatureManagement": {
...
"Suggestion.User": {
"EnabledFor": [
{
"Name": "AlwaysOn"
@kasunkv
kasunkv / _Layout.cshtml
Created January 18, 2020 18:58
Using the tag helper to check for multiple feature flags
<div class="container">
...
<div class="navbar-collapse collapse d-sm-inline-flex flex-sm-row-reverse">
<ul class="navbar-nav flex-grow-1">
...
<feature name="@Features.Promotions, @Features.PromotionDiscounts" requirement="All">
<li class="nav-item">
@kasunkv
kasunkv / HomeController.cs
Created January 18, 2020 18:24
FeatureGate attribute with RequirementType
using Microsoft.FeatureManagement.Mvc;
namespace MusicStore.Web.Controllers
{
public class HomeController : Controller
{
...
[FeatureGate(RequirementType.All, Features.Promotions, Features.PromotionDiscounts)]
public async Task<IActionResult> Promotions()