Skip to content

Commit 5c2a04b

Browse files
authored
Merge pull request #294506 from MicrosoftDocs/main
Publish to live, Wednesday 4AM PST, 2/12
2 parents e39a31d + df08c73 commit 5c2a04b

22 files changed

+415
-86
lines changed

articles/automation/how-to/automation-region-dns-records.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ms.service: azure-automation
1010

1111
# DNS records for Azure regions used by Azure Automation
1212

13-
The [Azure Automation](../automation-intro.md) service uses many DNS (Domain Name System) records for features to connect to the service. If you have an Automation account configured for a specific region, you can restrict communication to that regional datacenter. You might need to know these records to allow the following Automation features to work when it's hosted behind a firewall:
13+
The [Azure Automation](../automation-intro.md) service uses many Domain Name System (DNS) records for features to connect to the service. If you have an Automation account configured for a specific region, you can restrict communication to that regional datacenter. You might need to know these records to allow the following Automation features to work when it's hosted behind a firewall:
1414

1515
* Hybrid Runbook Worker
1616
* State Configuration

articles/azure-app-configuration/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -310,6 +310,8 @@
310310
href: https://go.microsoft.com/fwlink/?linkid=2180917
311311
- name: Python provider
312312
href: https://pypi.org/project/azure-appconfiguration-provider/
313+
- name: JavaScript provider
314+
href: ./reference-javascript-provider.md
313315
- name: Azure SDK for .NET
314316
href: https://go.microsoft.com/fwlink/?linkid=2092056
315317
- name: Azure SDK for Java

articles/azure-app-configuration/enable-dynamic-configuration-javascript.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -221,3 +221,8 @@ In this tutorial, you enabled your JavaScript app to dynamically refresh configu
221221

222222
> [!div class="nextstepaction"]
223223
> [Managed identity integration](./howto-integrate-azure-managed-service-identity.md)
224+
225+
For the full feature rundown of the JavaScript configuration provider library, continue to the following document.
226+
227+
> [!div class="nextstepaction"]
228+
> [JavaScript configuration provider](./reference-javascript-provider.md)

articles/azure-app-configuration/feature-management-dotnet-reference.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1191,8 +1191,6 @@ ActivitySource.AddActivityListener(new ActivityListener()
11911191

11921192
For more information, please go to [Collect a distributed trace](/dotnet/core/diagnostics/distributed-tracing-collection-walkthroughs).
11931193

1194-
1195-
11961194
### Application Insights Telemetry
11971195

11981196
The `Microsoft.FeatureManagement.Telemetry.ApplicationInsights` package provides a built-in telemetry publisher that sends feature flag evaluation data to [Application Insights](/azure/azure-monitor/app/app-insights-overview). The `Microsoft.FeatureManagement.Telemetry.ApplicationInsights` package also provides a telemetry initializer that automatically tags all events with `TargetingId` so that events may be linked to flag evaluations. To take advantage of this, add a reference to the package and register the Application Insights telemetry as in the following example.

articles/azure-app-configuration/index.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ landingContent:
188188
- text: Python provider
189189
url: https://pypi.org/project/azure-appconfiguration-provider/
190190
- text: JavaScript provider
191-
url: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/appconfiguration/app-configuration
191+
url: reference-javascript-provider.md
192192
- text: Kubernetes provider
193193
url: reference-kubernetes-provider.md
194194
- linkListType: reference

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

Lines changed: 76 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,16 @@ ms.service: azure-app-configuration
77
ms.devlang: csharp
88
ms.custom: devx-track-csharp, mode-other, devx-track-dotnet
99
ms.topic: quickstart
10-
ms.date: 05/24/2024
10+
ms.date: 02/04/2025
1111
ms.author: malev
1212
#Customer intent: As a .NET Framework developer, I want to manage all my app settings in one place.
1313
---
1414
# Quickstart: Create a .NET Framework app with Azure App Configuration
1515

1616
There are two ways to incorporate Azure App Configuration into a .NET Framework-based app.
1717

18-
- The configuration builder for App Configuration enables data from App Configuration to be loaded to App Settings. Your app accesses configuration as it always does via `ConfigurationManager`. You don't need to make any code change other than updates to *app.config* or *web.config* files. This quickstart will walk you through this option.
19-
- As is designed by the .NET Framework, the App Settings can only refresh upon application restart. The App Configuration .NET provider is a .NET Standard library. It supports caching and refreshing configuration dynamically without application restart. If the dynamic configuration is essential to you and you are willing to make code changes, see tutorials on how you can implement dynamic configuration updates in a [.NET Framework console app](./enable-dynamic-configuration-dotnet.md) or an [ASP.NET web app](./enable-dynamic-configuration-aspnet-netfx.md).
18+
- The configuration builder for App Configuration enables data from App Configuration to be loaded to App Settings. Your app accesses configuration as it always does via `ConfigurationManager`. You don't need to make any code change other than updates to *app.config* or *web.config* files. This quickstart walks you through this option.
19+
- As is designed by the .NET Framework, the App Settings can only refresh upon application restart. The App Configuration .NET provider is a .NET Standard library. It supports caching and refreshing configuration dynamically without application restart. If the dynamic configuration is essential to you and you're willing to make code changes, see tutorials on how you can implement dynamic configuration updates in a [.NET Framework console app](./enable-dynamic-configuration-dotnet.md) or an [ASP.NET web app](./enable-dynamic-configuration-aspnet-netfx.md).
2020

2121
In this quickstart, a .NET Framework console app is used as an example, but the same technique applies to an ASP.NET Web Forms/MVC app.
2222

@@ -45,33 +45,63 @@ Add the following key-value to the App Configuration store and leave **Label** a
4545

4646
## Connect to an App Configuration store
4747

48-
1. Right-click your project, and select **Manage NuGet Packages**. On the **Browse** tab, search and add the following NuGet packages to your project.
48+
Connect to your App Configuration store using Microsoft Entra ID (recommended), or a connection string.
4949

50-
- *Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration* version 1.0.0 or later
51-
- *Microsoft.Configuration.ConfigurationBuilders.Environment* version 2.0.0 or later
52-
- *System.Configuration.ConfigurationManager* version 4.6.0 or later
50+
1. Right-click your project, and select **Manage NuGet Packages**. On the **Browse** tab, search and add the latest stable versions of following NuGet packages to your project.
5351

54-
1. Update the *App.config* file of your project as follows:
52+
- Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration
53+
- Microsoft.Configuration.ConfigurationBuilders.Environment
54+
- System.Configuration.ConfigurationManager
5555

56+
1. Update the *App.config* file of your project as follows. You can connect to your App Configuration store using Microsoft Entra ID (recommended), or a connection string.
57+
58+
### [Microsoft Entra ID (recommended)](#tab/entra-id)
59+
60+
The `DefaultAzureCredential` is used to authenticate to your App Configuration store by default. Follow the [instructions](./concept-enable-rbac.md#authentication-with-token-credentials) to assign your credential the **App Configuration Data Reader** role. Be sure to allow sufficient time for the permission to propagate before running your application.
61+
5662
```xml
5763
<configSections>
5864
<section name="configBuilders" type="System.Configuration.ConfigurationBuildersSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false" />
5965
</configSections>
60-
66+
67+
<configBuilders>
68+
<builders>
69+
<add name="MyConfigStore" mode="Greedy" endpoint="${Endpoint}" type="Microsoft.Configuration.ConfigurationBuilders.AzureAppConfigurationBuilder, Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration" />
70+
<add name="Environment" mode="Greedy" type="Microsoft.Configuration.ConfigurationBuilders.EnvironmentConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.Environment" />
71+
</builders>
72+
</configBuilders>
73+
74+
<appSettings configBuilders="Environment,MyConfigStore">
75+
<add key="AppName" value="Console App Demo" />
76+
<add key="Endpoint" value ="Set via an environment variable - for example, dev, test, staging, or production endpoint." />
77+
</appSettings>
78+
```
79+
80+
The endpoint value of your App Configuration store is read from the environment variable `Endpoint`. You also add the `Environment` configuration builder before the `MyConfigStore` in the `configBuilders` property of the `appSettings` section.
81+
82+
### [Connection string](#tab/connection-string)
83+
84+
```xml
85+
<configSections>
86+
<section name="configBuilders" type="System.Configuration.ConfigurationBuildersSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false" />
87+
</configSections>
88+
6189
<configBuilders>
6290
<builders>
6391
<add name="MyConfigStore" mode="Greedy" connectionString="${ConnectionString}" type="Microsoft.Configuration.ConfigurationBuilders.AzureAppConfigurationBuilder, Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration" />
6492
<add name="Environment" mode="Greedy" type="Microsoft.Configuration.ConfigurationBuilders.EnvironmentConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.Environment" />
6593
</builders>
6694
</configBuilders>
67-
95+
6896
<appSettings configBuilders="Environment,MyConfigStore">
6997
<add key="AppName" value="Console App Demo" />
7098
<add key="ConnectionString" value ="Set via an environment variable - for example, dev, test, staging, or production connection string." />
7199
</appSettings>
72100
```
73-
74-
The connection string of your App Configuration store is read from the environment variable `ConnectionString`. Add the `Environment` configuration builder before the `MyConfigStore` in the `configBuilders` property of the `appSettings` section.
101+
102+
The connection string of your App Configuration store is read from the environment variable `ConnectionString`. You also add the `Environment` configuration builder before the `MyConfigStore` in the `configBuilders` property of the `appSettings` section.
103+
104+
---
75105

76106
1. Open *Program.cs*, and update the `Main` method to use App Configuration by calling `ConfigurationManager`.
77107

@@ -87,7 +117,33 @@ Add the following key-value to the App Configuration store and leave **Label** a
87117

88118
## Build and run the app
89119

90-
1. Set an environment variable named **ConnectionString** to the read-only key connection string obtained during your App Configuration store creation.
120+
1. Set an environment variable.
121+
122+
### [Microsoft Entra ID (recommended)](#tab/entra-id)
123+
124+
Set an environment variable named **Endpoint** to the endpoint of your App Configuration store found under the **Overview** of your store in the Azure portal.
125+
126+
If you use the Windows command prompt, run the following command and restart the command prompt to allow the change to take effect:
127+
128+
```cmd
129+
setx Endpoint "<endpoint-of-your-app-configuration-store>"
130+
```
131+
132+
If you use PowerShell, run the following command:
133+
134+
```powershell
135+
$Env:Endpoint = "<endpoint-of-your-app-configuration-store>"
136+
```
137+
138+
If you use macOS or Linux, run the following command:
139+
140+
```bash
141+
export Endpoint='<endpoint-of-your-app-configuration-store>'
142+
```
143+
144+
### [Connection string](#tab/connection-string)
145+
146+
Set an environment variable named **ConnectionString** to the read-only connection string of your App Configuration store found under **Access settings** of your store in the Azure portal.
91147

92148
If you use the Windows command prompt, run the following command:
93149

@@ -101,6 +157,13 @@ Add the following key-value to the App Configuration store and leave **Label** a
101157
$Env:ConnectionString = "<connection-string-of-your-app-configuration-store>"
102158
```
103159

160+
If you use macOS or Linux, run the following command:
161+
162+
```bash
163+
export ConnectionString='<connection-string-of-your-app-configuration-store>'
164+
```
165+
---
166+
104167
1. Restart Visual Studio to allow the change to take effect.
105168

106169
1. Press Ctrl + F5 to build and run the console app. You should see the message from App Configuration outputs in the console.

articles/azure-app-configuration/quickstart-javascript-provider.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,4 +408,9 @@ run().catch(console.error);
408408
In this quickstart, you created a new App Configuration store and learned how to access key-values using the App Configuration JavaScript provider in a Node.js app. To learn how to configure your app to dynamically refresh configuration settings, continue to the next tutorial.
409409
410410
> [!div class="nextstepaction"]
411-
> [Enable dynamic configuration](./enable-dynamic-configuration-javascript.md)
411+
> [Enable dynamic configuration](./enable-dynamic-configuration-javascript.md)
412+
413+
For the full feature rundown of the JavaScript configuration provider library, continue to the following document.
414+
415+
> [!div class="nextstepaction"]
416+
> [JavaScript configuration provider](./reference-javascript-provider.md)

0 commit comments

Comments
 (0)