Skip to content

Commit f5eca9d

Browse files
committed
Update following PR review
1 parent ad3110b commit f5eca9d

File tree

1 file changed

+39
-14
lines changed

1 file changed

+39
-14
lines changed

articles/azure-app-configuration/quickstart-feature-flag-dotnet.md

Lines changed: 39 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -47,23 +47,48 @@ You can use Visual Studio to create a new console app project.
4747
## Use the feature flag
4848

4949
1. Right-click your project, and select **Manage NuGet Packages**. On the **Browse** tab, search and add the following NuGet packages to your project.
50+
51+
### [Microsoft Entra ID (recommended)](#tab/entra-id)
5052

5153
```
5254
Microsoft.Extensions.Configuration.AzureAppConfiguration
5355
Microsoft.FeatureManagement
56+
Azure.Identity
5457
```
5558
59+
### [Connection string](#tab/connection-string)
60+
61+
```
62+
Microsoft.Extensions.Configuration.AzureAppConfiguration
63+
Microsoft.FeatureManagement
64+
```
65+
---
66+
5667
Make sure that the version of `Microsoft.FeatureManagement` is greater than 3.1.0.
5768
5869
1. Open *Program.cs* and add the following statements.
5970
71+
### [Microsoft Entra ID (recommended)](#tab/entra-id)
72+
73+
```csharp
74+
using Microsoft.Extensions.Configuration;
75+
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
76+
using Microsoft.FeatureManagement;
77+
using Azure.Identity;
78+
```
79+
80+
### [Connection string](#tab/connection-string)
81+
6082
```csharp
6183
using Microsoft.Extensions.Configuration;
6284
using Microsoft.Extensions.Configuration.AzureAppConfiguration;
6385
using Microsoft.FeatureManagement;
6486
```
87+
---
6588
66-
1. Update *Program.cs*. to connect to your App Configuration store using Microsoft Entra ID (recommended) or a connection string, and specify the `UseFeatureFlags` option so that feature flags are retrieved. Create a `ConfigurationFeatureDefinitionProvider` to provide feature flag definition from the configuration and a `FeatureManager` to evaluate feature flags' state. Then display a message if the `Beta` feature flag is enabled.
89+
1. Update the *Program.cs* file and add a call to the `UseFeatureFlags` method to load feature flags from App Configuration. Then create a `FeatureManager` to read feature flags from the configuration. Finally, display a message if the *Beta* feature flag is enabled.
90+
91+
You can connect to your App Configuration store using Microsoft Entra ID (recommended) or a connection string.
6792
6893
### [Microsoft Entra ID (recommended)](#tab/entra-id)
6994
@@ -77,14 +102,11 @@ You can use Visual Studio to create a new console app project.
77102
{
78103
string endpoint = Environment.GetEnvironmentVariable("Endpoint");
79104
options.Connect(new Uri(endpoint), new DefaultAzureCredential());
80-
.UseFeatureFlags();
105+
.UseFeatureFlags();
81106
}).Build();
82107
83-
IFeatureDefinitionProvider featureDefinitionProvider = new ConfigurationFeatureDefinitionProvider(configuration);
84-
85-
IVariantFeatureManager featureManager = new FeatureManager(
86-
featureDefinitionProvider,
87-
new FeatureManagementOptions());
108+
var featureManager = new FeatureManager(
109+
new ConfigurationFeatureDefinitionProvider(configuration));
88110
89111
if (await featureManager.IsEnabledAsync("Beta"))
90112
{
@@ -104,11 +126,11 @@ You can use Visual Studio to create a new console app project.
104126
{
105127
string endpoint = Environment.GetEnvironmentVariable("Endpoint");
106128
options.Connect(new Uri(endpoint), new DefaultAzureCredential());
107-
.UseFeatureFlags();
129+
.UseFeatureFlags();
108130
}).Build();
109131
110-
var featureManager = new FeatureManager(
111-
new ConfigurationFeatureDefinitionProvider(configuration));
132+
var featureManager = new FeatureManager(
133+
new ConfigurationFeatureDefinitionProvider(configuration));
112134
113135
if (await featureManager.IsEnabledAsync("Beta"))
114136
{
@@ -128,10 +150,11 @@ You can use Visual Studio to create a new console app project.
128150
.AddAzureAppConfiguration(options =>
129151
{
130152
options.Connect(Environment.GetEnvironmentVariable("ConnectionString"))
131-
.UseFeatureFlags();
153+
.UseFeatureFlags();
132154
}).Build();
133155
134-
IFeatureDefinitionProvider featureDefinitionProvider = new ConfigurationFeatureDefinitionProvider(configuration);
156+
var featureManager = new FeatureManager(
157+
new ConfigurationFeatureDefinitionProvider(configuration));
135158
136159
IVariantFeatureManager featureManager = new FeatureManager(
137160
featureDefinitionProvider,
@@ -154,10 +177,12 @@ You can use Visual Studio to create a new console app project.
154177
.AddAzureAppConfiguration(options =>
155178
{
156179
options.Connect(Environment.GetEnvironmentVariable("ConnectionString"))
157-
.UseFeatureFlags();
180+
.UseFeatureFlags();
158181
}).Build();
159182
160-
IFeatureDefinitionProvider featureDefinitionProvider = new ConfigurationFeatureDefinitionProvider(configuration);
183+
var featureManager = new FeatureManager(
184+
new ConfigurationFeatureDefinitionProvider(configuration));
185+
161186
162187
IVariantFeatureManager featureManager = new FeatureManager(
163188
featureDefinitionProvider,

0 commit comments

Comments
 (0)