From be251541758d70c3b5222211747c41c9b144022b Mon Sep 17 00:00:00 2001 From: Zhiyuan Liang Date: Thu, 18 Dec 2025 14:29:08 +0800 Subject: [PATCH 1/3] fix feature flag demo app --- examples/FeatureFlagDemo/FeatureFlagDemo.csproj | 4 ++-- examples/FeatureFlagDemo/Startup.cs | 10 +++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/examples/FeatureFlagDemo/FeatureFlagDemo.csproj b/examples/FeatureFlagDemo/FeatureFlagDemo.csproj index ba61461d..800f4d40 100644 --- a/examples/FeatureFlagDemo/FeatureFlagDemo.csproj +++ b/examples/FeatureFlagDemo/FeatureFlagDemo.csproj @@ -1,4 +1,4 @@ - + net8.0 @@ -6,7 +6,7 @@ - + diff --git a/examples/FeatureFlagDemo/Startup.cs b/examples/FeatureFlagDemo/Startup.cs index f29f4934..2fe06089 100644 --- a/examples/FeatureFlagDemo/Startup.cs +++ b/examples/FeatureFlagDemo/Startup.cs @@ -48,6 +48,11 @@ public void ConfigureServices(IServiceCollection services) .WithTargeting() .UseDisabledFeaturesHandler(new FeatureNotEnabledDisabledHandler()); + if (!string.IsNullOrEmpty(Configuration["AppConfiguration:ConnectionString"])) + { + services.AddAzureAppConfiguration(); + } + services.AddMvc(o => { o.Filters.AddForFeature(MyFeatureFlags.EnhancedPipeline); @@ -67,7 +72,10 @@ public void Configure(IApplicationBuilder app, IHostEnvironment env) app.UseHsts(); } - app.UseAzureAppConfiguration(); + if (!string.IsNullOrEmpty(Configuration["AppConfiguration:ConnectionString"])) + { + app.UseAzureAppConfiguration(); + } app.UseAuthentication(); From 01c4c240828c98559ec1c21f4a2ca92b8ff08653 Mon Sep 17 00:00:00 2001 From: Zhiyuan Liang Date: Thu, 18 Dec 2025 16:25:36 +0800 Subject: [PATCH 2/3] use env var to add empty configuration refresher provider --- examples/FeatureFlagDemo/Program.cs | 6 ++++++ examples/FeatureFlagDemo/Startup.cs | 10 ++-------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/FeatureFlagDemo/Program.cs b/examples/FeatureFlagDemo/Program.cs index 43be14d4..89f5c90e 100644 --- a/examples/FeatureFlagDemo/Program.cs +++ b/examples/FeatureFlagDemo/Program.cs @@ -33,6 +33,12 @@ public static IWebHostBuilder CreateWebHostBuilder(string[] args) o.UseFeatureFlags(); }); } + else + { + // + // Disable Azure App Configuration provider when connection string is not configured + Environment.SetEnvironmentVariable("AZURE_APP_CONFIGURATION_PROVIDER_DISABLED", "true"); + } }) .UseStartup(); } diff --git a/examples/FeatureFlagDemo/Startup.cs b/examples/FeatureFlagDemo/Startup.cs index 2fe06089..0a7b7eca 100644 --- a/examples/FeatureFlagDemo/Startup.cs +++ b/examples/FeatureFlagDemo/Startup.cs @@ -48,10 +48,7 @@ public void ConfigureServices(IServiceCollection services) .WithTargeting() .UseDisabledFeaturesHandler(new FeatureNotEnabledDisabledHandler()); - if (!string.IsNullOrEmpty(Configuration["AppConfiguration:ConnectionString"])) - { - services.AddAzureAppConfiguration(); - } + services.AddAzureAppConfiguration(); services.AddMvc(o => { @@ -72,10 +69,7 @@ public void Configure(IApplicationBuilder app, IHostEnvironment env) app.UseHsts(); } - if (!string.IsNullOrEmpty(Configuration["AppConfiguration:ConnectionString"])) - { - app.UseAzureAppConfiguration(); - } + app.UseAzureAppConfiguration(); app.UseAuthentication(); From 3a190acbbd8c130314046d8c434646fbc36e4782 Mon Sep 17 00:00:00 2001 From: Zhiyuan Liang <141655842+zhiyuanliang-ms@users.noreply.github.com> Date: Fri, 19 Dec 2025 16:00:27 +0800 Subject: [PATCH 3/3] Update examples/FeatureFlagDemo/Program.cs Co-authored-by: Jimmy Campbell --- examples/FeatureFlagDemo/Program.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/FeatureFlagDemo/Program.cs b/examples/FeatureFlagDemo/Program.cs index 89f5c90e..c7392ef7 100644 --- a/examples/FeatureFlagDemo/Program.cs +++ b/examples/FeatureFlagDemo/Program.cs @@ -37,6 +37,7 @@ public static IWebHostBuilder CreateWebHostBuilder(string[] args) { // // Disable Azure App Configuration provider when connection string is not configured + // This enables feature flag retrieval solely from appsettings.json Environment.SetEnvironmentVariable("AZURE_APP_CONFIGURATION_PROVIDER_DISABLED", "true"); } })