빠른 시작: Azure App Configuration을 사용하여 .NET Framework 앱 만들기
Azure App Configuration을 .NET Framework 기반 앱에 통합하는 방법에는 두 가지가 있습니다.
- App Configuration용 구성 작성기를 사용하면 App Configuration의 데이터를 앱 설정에 로드할 수 있습니다. 앱은 항상
ConfigurationManager
를 통해 구성에 액세스합니다. app.config 또는 web.config 파일에 대한 업데이트 이외의 코드 변경은 필요가 없습니다. 이 빠른 시작에서는 이 옵션에 대해 설명합니다. - .NET Framework에서 설계한 대로 앱 설정은 애플리케이션을 다시 시작할 때만 새로 고칠 수 있습니다. App Configuration .NET 공급자는 .NET Standard 라이브러리입니다. 애플리케이션을 다시 시작하지 않고 동적으로 구성을 캐싱 및 새로 고치도록 지원합니다. 동적 구성이 필수이고 코드를 변경하려는 경우 .NET Framework 콘솔 앱 또는 ASP.NET 웹앱에서 동적 구성 업데이트를 구현하는 방법에 대한 자습서를 참조하세요.
이 빠른 시작에서는 .NET Framework 콘솔 앱이 예제로 사용되지만 ASP.NET Web Forms/MVC 앱에도 동일한 기술이 적용됩니다.
필수 조건
- 활성 구독이 있는 Azure 계정. 체험 계정 만들기
- App Configuration 저장소. 저장소를 만듭니다.
- Visual Studio
- .NET Framework 4.7.2 이상
키-값 추가
App Configuration 저장소에 다음 키-값을 추가하고 레이블 및 콘텐츠 형식을 기본값으로 둡니다. Azure Portal 또는 CLI를 사용하여 저장소에 키-값을 추가하는 방법에 대한 자세한 내용은 키-값 만들기로 이동합니다.
키 | 값 |
---|---|
TestApp:Settings:Message | Azure App Configuration의 데이터 |
.NET Framework 콘솔 앱 만들기
Visual Studio를 시작하고 새 프로젝트 만들기를 선택합니다.
새 프로젝트 만들기에서 콘솔 프로젝트 형식을 필터링하고 프로젝트 템플릿 목록에서 C#이 있는 콘솔 앱(.NET Framework)을 선택합니다. 다음을 누릅니다.
새 프로젝트 구성에서 프로젝트 이름을 입력합니다. 프레임워크 아래에서 .NET Framework 4.7.2 이상을 선택합니다. 만들기를 누릅니다.
App Configuration 저장소에 연결
마우스 오른쪽 단추로 프로젝트를 클릭하고, NuGet 패키지 관리를 선택합니다. 찾아보기 탭에서 다음 NuGet 패키지를 검색하여 프로젝트에 추가합니다.
- Microsoft.Extensions.Configuration.AzureAppConfiguration 버전 1.0.0 이상
- Microsoft.Configuration.ConfigurationBuilders.Environment 버전 2.0.0 이상
- System.Configuration.ConfigurationManager 버전 4.6.0 이상
프로젝트의 App.config 파일을 다음과 같이 업데이트합니다.
<configSections> <section name="configBuilders" type="System.Configuration.ConfigurationBuildersSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false" /> </configSections> <configBuilders> <builders> <add name="MyConfigStore" mode="Greedy" connectionString="${ConnectionString}" type="Microsoft.Configuration.ConfigurationBuilders.AzureAppConfigurationBuilder, Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration" /> <add name="Environment" mode="Greedy" type="Microsoft.Configuration.ConfigurationBuilders.EnvironmentConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.Environment" /> </builders> </configBuilders> <appSettings configBuilders="Environment,MyConfigStore"> <add key="AppName" value="Console App Demo" /> <add key="ConnectionString" value ="Set via an environment variable - for example, dev, test, staging, or production connection string." /> </appSettings>
App Configuration 저장소의 연결 문자열은
ConnectionString
환경 변수에서 읽습니다.appSettings
섹션의configBuilders
속성에 있는MyConfigStore
앞에Environment
구성 작성기를 추가합니다.Program.cs를 열고,
ConfigurationManager
를 호출하여 App Configuration을 사용하도록Main
메서드를 업데이트합니다.static void Main(string[] args) { string message = System.Configuration.ConfigurationManager.AppSettings["TestApp:Settings:Message"]; Console.WriteLine(message); Console.ReadKey(); }
앱 빌드 및 실행
ConnectionString이라는 환경 변수를 App Configuration 저장소 생성 중에 획득한 읽기 전용 키 연결 문자열로 설정합니다.
Windows 명령 프롬프트를 사용하는 경우 다음 명령을 실행합니다.
setx ConnectionString "connection-string-of-your-app-configuration-store"
Windows PowerShell을 사용하는 경우 다음 명령을 실행합니다.
$Env:ConnectionString = "connection-string-of-your-app-configuration-store"
Visual Studio를 다시 시작하여 변경 내용을 적용합니다.
Ctrl+F5를 눌러 콘솔 앱을 빌드하고 실행합니다. 콘솔에 App Configuration 출력의 메시지가 표시됩니다.
리소스 정리
이 문서에서 만든 리소스를 계속 사용하지 않으려면 여기서 만든 리소스 그룹을 삭제하여 요금이 부과되지 않도록 합니다.
Important
리소스 그룹을 삭제하면 다시 되돌릴 수 없습니다. 리소스 그룹 및 포함된 모든 리소스가 영구적으로 삭제됩니다. 잘못된 리소스 그룹 또는 리소스를 자동으로 삭제하지 않도록 합니다. 유지하려는 다른 리소스가 포함된 리소스 그룹 내에서 이 문서에 대한 리소스를 만든 경우 리소스 그룹을 삭제하는 대신 해당 창에서 각 리소스를 개별적으로 삭제합니다.
- Azure Portal에 로그인하고 리소스 그룹을 선택합니다.
- 이름으로 필터링 상자에서 리소스 그룹의 이름을 입력합니다.
- 결과 목록에서 리소스 그룹 이름을 선택하여 개요를 확인합니다.
- 리소스 그룹 삭제를 선택합니다.
- 리소스 그룹 삭제를 확인하는 메시지가 표시됩니다. 리소스 그룹의 이름을 입력하여 확인하고 삭제를 선택합니다.
잠시 후, 리소스 그룹 및 모든 해당 리소스가 삭제됩니다.
다음 단계
이 빠른 시작에서는 새 App Configuration 저장소를 만들고, .NET Framework 콘솔 앱에 사용했습니다. .NET Framework 앱에서 구성 설정을 동적으로 새로 고치도록 설정하는 방법을 알아보려면 다음 자습서를 계속 진행하세요.