Hızlı Başlangıç: Azure Uygulaması Yapılandırması ile ASP.NET Core uygulaması oluşturma
Bu hızlı başlangıçta, Azure Uygulaması Yapılandırması'nı kullanarak ASP.NET Core uygulaması için uygulama ayarlarınızın depolamasını ve yönetimini dışlaştıracaksınız. ASP.NET Core, bir veya daha fazla yapılandırma sağlayıcısının ayarlarını kullanarak tek bir anahtar-değer tabanlı yapılandırma nesnesi oluşturur. Uygulama Yapılandırması bir .NET yapılandırma sağlayıcısı kitaplığı sunar. Bu nedenle, uygulamanız için ek yapılandırma kaynağı olarak Uygulama Yapılandırması kullanabilirsiniz. Mevcut bir uygulamanız varsa, Uygulama Yapılandırması kullanmaya başlamak için uygulama başlangıç kodunuzda yalnızca birkaç küçük değişikliğe ihtiyacınız vardır.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz bir tane oluşturun.
- bir Uygulama Yapılandırması mağazası. Mağaza oluşturma.
- .NET SDK 6.0 veya üzeri
İpucu
Azure Cloud Shell, bu makaledeki komut satırı yönergelerini çalıştırmak için kullanabileceğiniz ücretsiz, etkileşimli bir kabukdur. .NET SDK'sı dahil olmak üzere önceden yüklenmiş yaygın Azure araçlarına sahiptir. Azure aboneliğinizde oturum açtıysanız azure cloud shell'inizi shell.azure.com başlatın. Belgelerimizi okuyarak Azure Cloud Shell hakkında daha fazla bilgi edinebilirsiniz
Anahtar-değer ekleme
aşağıdaki anahtar değerlerini Uygulama Yapılandırması deposuna ekleyin ve Etiket ve İçerik Türü değerlerini varsayılan değerleriyle bırakın. Azure portalını veya CLI'yı kullanarak bir depoya anahtar-değer ekleme hakkında daha fazla bilgi için Anahtar-değer oluşturma bölümüne gidin.
Anahtar | Değer |
---|---|
TestApp:Ayarlar:BackgroundColor | Beyaz |
TestApp:Ayarlar:FontColor | Siyah |
TestApp:Ayarlar:FontSize | 24 |
TestApp:Ayarlar:Message | Azure Uygulaması Yapılandırmasından Veriler |
ASP.NET Core web uygulaması oluşturma
Yeni bir ASP.NET Core web uygulaması projesi oluşturmak için .NET komut satırı arabirimini (CLI) kullanın. Azure Cloud Shell bu araçları sizin için sağlar. Ayrıca Windows, macOS ve Linux platformları genelinde de kullanılabilir.
Yeni bir TestAppConfig klasöründe ASP.NET Core web uygulaması oluşturmak için aşağıdaki komutu çalıştırın:
dotnet new webapp --output TestAppConfig --framework net6.0
Uygulama Yapılandırması mağazasına Bağlan
Projenin TestAppConfig dizinine gidin ve bir Microsoft.Azure.AppConfiguration.AspNetCore NuGet paket başvurusu eklemek için aşağıdaki komutu çalıştırın:
dotnet add package Microsoft.Azure.AppConfiguration.AspNetCore
Aşağıdaki komutu çalıştırın. komutu, Uygulama Yapılandırması deponuzun bağlantı dizesi depolayan adlı
ConnectionStrings:AppConfig
gizli diziyi depolamak için Gizli Dizi Yöneticisi'ni kullanır. Yer tutucuyu<your_connection_string>
Uygulama Yapılandırması mağazanızın bağlantı dizesi değiştirin. bağlantı dizesi Azure portalında Uygulama Yapılandırması deponuzun Erişim Anahtarları altında bulabilirsiniz.dotnet user-secrets init dotnet user-secrets set ConnectionStrings:AppConfig "<your_connection_string>"
İpucu
Bazı kabuklar, tırnak içine alınmadığı sürece bağlantı dizesi kesecektir. Komutun çıkışının
dotnet user-secrets list
tüm bağlantı dizesi gösterdiğinden emin olun. Aksi takdirde komutu yeniden çalıştırın ve bağlantı dizesi tırnak içine alın.Gizli Dizi Yöneticisi gizli diziyi proje ağacınızın dışında depolar ve bu da gizli dizilerin kaynak kodu içinde yanlışlıkla paylaşılmasını önlemeye yardımcı olur. Yalnızca web uygulamasını yerel olarak test etmek için kullanılır. Uygulama App Service gibi Azure'a dağıtıldığında bağlantı dizesi depolamak için Bağlan ion dizelerini, Uygulama ayarlarını veya ortam değişkenlerini kullanın. Alternatif olarak, bağlantı dizesi birlikte kullanmaktan kaçınmak için yönetilen kimlikleri veya diğer Microsoft Entra kimliklerinizi kullanarak Uygulama Yapılandırması bağlanabilirsiniz.
Program.cs açın ve yöntemini çağırarak Azure Uygulaması Yapılandırması'nı
AddAzureAppConfiguration
ek yapılandırma kaynağı olarak ekleyin.var builder = WebApplication.CreateBuilder(args); // Retrieve the connection string string connectionString = builder.Configuration.GetConnectionString("AppConfig"); // Load configuration from Azure App Configuration builder.Configuration.AddAzureAppConfiguration(connectionString); // The rest of existing code in program.cs // ... ...
Bu kod, bir bağlantı dizesi kullanarak Uygulama Yapılandırması deponuza bağlanır ve etiketleri olmayan tüm anahtar değerlerini yükler. Uygulama Yapılandırması sağlayıcısı hakkında daha fazla bilgi için Uygulama Yapılandırması sağlayıcı API başvurusuna bakın.
Uygulama Yapılandırması mağazasından okuma
Bu örnekte, Uygulama Yapılandırması deponuzda yapılandırdığınız ayarları kullanarak bir web sayfasını içeriğini görüntüleyecek şekilde güncelleştireceksiniz.
Proje dizininizin köküne bir Ayarlar.cs dosyası ekleyin. Kullanacağınız yapılandırma için kesin olarak belirlenmiş
Settings
bir sınıf tanımlar. Ad alanını projenizin adıyla değiştirin.namespace TestAppConfig { public class Settings { public string BackgroundColor { get; set; } public long FontSize { get; set; } public string FontColor { get; set; } public string Message { get; set; } } }
Yapılandırmadaki
TestApp:Settings
bölümü nesnesineSettings
bağlayın.Program.cs aşağıdaki kodla güncelleştirin ve dosyanın başına ad alanını ekleyin
TestAppConfig
.using TestAppConfig; // Existing code in Program.cs // ... ... builder.Services.AddRazorPages(); // Bind configuration "TestApp:Settings" section to the Settings object builder.Services.Configure<Settings>(builder.Configuration.GetSection("TestApp:Settings")); var app = builder.Build(); // The rest of existing code in program.cs // ... ...
Sayfalar dizininde Index.cshtml.cs açın ve sınıfı aşağıdaki kodla güncelleştirin
IndexModel
.using Microsoft.Extensions.Options
Henüz orada değilse, ad alanını dosyanın başına ekleyin.public class IndexModel : PageModel { private readonly ILogger<IndexModel> _logger; public Settings Settings { get; } public IndexModel(IOptionsSnapshot<Settings> options, ILogger<IndexModel> logger) { Settings = options.Value; _logger = logger; } }
Pages dizininde Index.cshtml dosyasını açın ve içeriği aşağıdaki kodla güncelleştirin.
@page @model IndexModel @{ ViewData["Title"] = "Home page"; } <style> body { background-color: @Model.Settings.BackgroundColor; } h1 { color: @Model.Settings.FontColor; font-size: @(Model.Settings.FontSize)px; } </style> <h1>@Model.Settings.Message</h1>
Uygulamayı yerel olarak derleme ve çalıştırma
Uygulamayı .NET CLI kullanarak derlemek için projenizin kök dizinine gidin. Komut kabuğunda aşağıdaki komutu çalıştırın:
dotnet build
Derleme başarıyla tamamlandıktan sonra web uygulamasını yerel olarak çalıştırmak için aşağıdaki komutu çalıştırın:
dotnet run
Komutun
dotnet run
çıkışı iki URL içerir. Bir tarayıcı açın ve uygulamanıza erişmek için bu URL'lerden birine gidin. Örneğin:https://localhost:5001
.Azure Cloud Shell'de çalışıyorsanız Web Önizleme düğmesini ve ardından Yapılandır'ı seçin. Bağlantı noktasını önizleme için yapılandırmanız istendiğinde 5000 yazın ve Aç ve gözat'ı seçin.
Web sayfası şöyle görünür:
Kaynakları temizleme
Bu makalede oluşturulan kaynakları kullanmaya devam etmek istemiyorsanız ücretlerden kaçınmak için burada oluşturduğunuz kaynak grubunu silin.
Önemli
Silinen kaynak grupları geri alınamaz. Kaynak grubu ve içindeki tüm kaynaklar kalıcı olarak silinir. Yanlış kaynak grubunu veya kaynakları yanlışlıkla silmediğinizden emin olun. Bu makalenin kaynaklarını, saklamak istediğiniz diğer kaynakları içeren bir kaynak grubu içinde oluşturduysanız, kaynak grubunu silmek yerine her kaynağı ilgili bölmeden tek tek silin.
- Azure portalında oturum açın ve Kaynak grupları'nı seçin.
- Ada göre filtrele kutusuna kaynak grubunuzun adını girin.
- Genel bir bakış görmek için sonuç listesinde kaynak grubu adını seçin.
- Kaynak grubunu sil'i seçin.
- Kaynak grubunun silinmesini onaylamanız istenir. Onaylamak için kaynak grubunuzun adını girin ve Sil'i seçin.
Birkaç dakika sonra kaynak grubu ve tüm kaynakları silinir.
Sonraki adımlar
Bu hızlı başlangıçta:
- Yeni bir Uygulama Yapılandırması deposu sağlandı.
- Uygulama Yapılandırması sağlayıcı kitaplığı kullanılarak Uygulama Yapılandırması deponuza Bağlan.
- Yapılandırma sağlayıcısı kitaplığıyla Uygulama Yapılandırması deponuzun anahtar değerlerini okuyun.
- Uygulama Yapılandırması deponuzda yapılandırdığınız ayarları kullanarak bir web sayfası görüntülenir.
ASP.NET Core web uygulamanızı yapılandırma ayarlarını dinamik olarak yenilemek üzere yapılandırmayı öğrenmek için sonraki öğreticiye geçin.