Aracılığıyla paylaş


Hızlı Başlangıç: Azure Uygulaması Yapılandırması ile Azure İşlevleri uygulaması oluşturma

Bu hızlı başlangıçta, Azure Uygulama Yapılandırması'nı kullanarak Azure İşlevleri uygulama ayarlarınızı kodunuzun dışında merkezileştirme ve yönetme adımları gösterilmektedir. .NET yapılandırma sağlayıcısı tümleştirmesi ile, Uygulama Yapılandırması'nı yalnızca birkaç basit kod değişikliğiyle ek bir yapılandırma kaynağı olarak ekleyebilirsiniz.

Önkoşullar

Anahtar-değer ekleme

Uygulama Yapılandırması deposuna aşağıdaki anahtar değerini 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:Mesaj Azure Uygulaması Yapılandırmasından Veriler

İşlev Uygulaması Oluşturma

Azure İşlevleri (C#) şablonunu seçerek Visual Studio kullanarak bir Azure İşlevleri uygulaması oluşturun. Bu şablon, projeniz için temel ayarları yapılandırma konusunda size yol gösterir. Ayrıntılı yönergeler için bkz. Visual Studio kullanarak Azure İşlevleri geliştirme.

İşlev Uygulamanızı oluştururken anahtar parametreleri için başvuru olarak aşağıdaki tabloyu kullanın.

Ayar Değer
İşlevler çalışanı .NET 8.0 Yalıtılmış
İşlev HTTP tetikleyicisi
Yetkilendirme düzeyi Anonim

Not

Azure Uygulama Yapılandırması , yalıtılmış çalışan modelinde veya işlem içi modelde Azure İşlevleri ile kullanılabilir. Bu hızlı başlangıçta örnek olarak yalıtılmış çalışan modeli kullanılır. Her iki model için tam kod örneklerini Azure Uygulama Yapılandırması GitHub deposunda bulabilirsiniz.

Uygulama Yapılandırması deposuna bağlanma

Microsoft Entra Id (önerilen) veya bir bağlantı dizesi kullanarak Uygulama Yapılandırması mağazanıza bağlanabilirsiniz.

  1. Projenize sağ tıklayın ve NuGet Paketlerini Yönet'i seçin. Gözat sekmesinde aşağıdaki NuGet paketlerinin en son kararlı sürümünü arayın ve projenize ekleyin.

    • Microsoft.Azure.AppConfiguration.Functions.Worker
    • Azure.Identity (Azure Kimlik)
  2. Program.cs açın ve kodu aşağıdaki gibi güncelleştirin. Yöntemini çağırarak Azure Uygulama Yapılandırması'nı AddAzureAppConfiguration ek yapılandırma kaynağı olarak eklersiniz.

    Uygulama Yapılandırması deponuzda kimlik doğrulaması yapmak için DefaultAzureCredential öğesini kullanırsınız. Kimlik bilgilerinizi Uygulama Yapılandırması Veri Okuyucusu rolü atamak için yönergeleri izleyin. Uygulamanızı çalıştırmadan önce iznin yayılması için yeterli süreye izin verdiğinden emin olun.

    using Azure.Identity;
    using Microsoft.Azure.Functions.Worker.Builder;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Hosting;
    
    var builder = FunctionsApplication.CreateBuilder(args);
    
    // Connect to Azure App Configuration
    builder.Configuration.AddAzureAppConfiguration(options =>
    {
        Uri endpoint = new(Environment.GetEnvironmentVariable("AZURE_APPCONFIG_ENDPOINT") ?? 
            throw new InvalidOperationException("The environment variable 'AZURE_APPCONFIG_ENDPOINT' is not set or is empty."));
        options.Connect(endpoint, new DefaultAzureCredential())
               // Load all keys that start with `TestApp:` and have no label
               .Select("TestApp:*");
    });
    
  3. Function1.cs açın ve aşağıdaki ad alanını ekleyin.

    using Microsoft.Extensions.Configuration;
    

    Bağımlılık ekleme yoluyla örneğini IConfiguration almak için oluşturucuyu güncelleştirin.

    private readonly IConfiguration _configuration;
    private readonly ILogger<Function1> _logger;
    
    public Function1(IConfiguration configuration, ILogger<Function1> logger)
    {
        _configuration = configuration;
        _logger = logger;
    }
    
  4. Yapılandırmadaki Run değerleri okumak için yöntemini güncelleştirin.

    [Function("Function1")]
    public IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req)
    {
        _logger.LogInformation("C# HTTP trigger function processed a request.");
    
        // Read configuration data
        string key = "TestApp:Settings:Message";
        string? message = _configuration[key];
    
        return new OkObjectResult(message ?? $"Please create a key-value with the key '{key}' in Azure App Configuration.");
    }
    

İşlevi yerel olarak test etme

  1. ortam değişkenini ayarlayın.

    AZURE_APPCONFIG_ENDPOINT adlı ortam değişkenini Azure portalındaki mağazanıza genel bakış bölümünde bulunan Uygulama Yapılandırması deponuzun uç noktasına ayarlayın.

    Windows komut istemini kullanıyorsanız, aşağıdaki komutu çalıştırın ve değişikliğin etkili olması için komut istemini yeniden başlatın:

    setx AZURE_APPCONFIG_ENDPOINT "<endpoint-of-your-app-configuration-store>"
    

    PowerShell kullanıyorsanız aşağıdaki komutu çalıştırın:

    $Env:AZURE_APPCONFIG_ENDPOINT = "<endpoint-of-your-app-configuration-store>"
    

    macOS veya Linux kullanıyorsanız aşağıdaki komutu çalıştırın:

    export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'
    
  2. İşlevinizi test etmek için F5 tuşuna basın. İstenirse Visual Studio'dan Azure İşlevleri Core (CLI) araçlarını indirme ve yükleme isteğini kabul edin. Araçların HTTP isteklerini işleyebilmesi için bir güvenlik duvarı özel durumunu etkinleştirmeniz de gerekebilir.

  3. Azure İşlevleri çalışma zamanı çıktısından işlevinizin URL'sini kopyalayın.

    VS'de Hızlı Başlangıç İşlevi hata ayıklaması

  4. HTTP isteğinin URL’sini tarayıcınızın adres çubuğuna yapıştırın. Aşağıdaki görüntüde, tarayıcıda işlev tarafından döndürülen yerel GET isteğine verilen yanıt gösterilmektedir.

    Hızlı Başlangıç Fonksiyonu'nu Yerel Olarak Başlatma

Uygulama Yapılandırması referansları ile tetikleyici parametrelerini yönetme

Azure İşlevleri tetikleyicileri bir işlevin nasıl çağrılılacağını tanımlar. Kuyruk adları veya veritabanı adları gibi tetikleyici öznitelikleri konak başlatma zamanında yüklenir ve Azure Uygulama Yapılandırması'ndan doğrudan değer alamaz. Bu parametreleri yönetmek için Azure İşlevleri ve App Service için kullanılabilen Uygulama Yapılandırması başvuru özelliğini kullanabilirsiniz.

Uygulama Yapılandırması başvuru özelliği, doğrudan uygulama ayarlarınızdan Azure Uygulama Yapılandırması'nda depolanan anahtar-değerlere başvurmanızı sağlar. Azure İşlevleri başlangıçta bu başvuruları çözümleyerek tetikleyici parametrelerini merkezi ve güvenli bir şekilde yönetmenizi sağlar.

Örneğin, kuyruk tarafından tetiklenen bir İşlev uygulamasını düşünün. Kuyruk adını doğrudan tetikleyici özniteliğinde belirtmek yerine Azure Uygulama Yapılandırması'nda depolanan bir anahtar-değere başvurabilirsiniz.

  1. Azure Uygulama Yapılandırma deponuzda kuyruk adınız için bir anahtar-değer ekleyin:

    Anahtar Değer
    TestApp:Storage:QueueName <Depolama hesabınızdaki kuyruk adı>
  2. İşlev uygulamanızda Azure portalında Ayarlar ->Ortam değişkenleri ->Uygulama ayarları'nı seçin ve Uygulama Yapılandırma anahtarına başvuran bir uygulama ayarı oluşturun:

    İsim Değer
    MyQueueName @Microsoft.AppConfiguration(Endpoint=<your-store-endpoint>; Key=TestApp:Storage:QueueName)

    Tavsiye

    Azure Uygulama Yapılandırması'nda birden çok anahtar değeriniz varsa, bunları Azure portalını veya CLI'yı kullanarak Azure İşlevleri'ne Uygulama Yapılandırması başvurusu olarak toplu olarak dışarı aktarabilirsiniz .

  3. Azure İşlevleri uygulamanız için yönetilen kimliği etkinleştirin ve Uygulama Yapılandırma deponuz için Uygulama Yapılandırma Veri Okuyucusu rolünü atayın. Uygulama Yapılandırması başvurularını ayarlama hakkında ayrıntılı yönergeler için bkz. App Service ve Azure İşlevleri'nde Uygulama Yapılandırması başvurularını kullanma.

  4. Kuyrukla tetiklenen işlevinizi uygulama ayarını kullanacak şekilde güncelleştirin:

    [Function("QueueTriggeredFunction")]
    public void Run([QueueTrigger(queueName: "%MyQueueName%")] QueueMessage message)
    {
        _logger.LogInformation($"C# Queue trigger function processed: {message.MessageText}");
    }
    

    Çalışma zamanında, Azure İşlevleri %MyQueueName% yer tutucuyu Azure Uygulama Yapılandırması'nda depolanan değere çözümleyerek tetikleyici parametrelerini işlev kodunuzla sabit kodlamadan merkezi olarak yönetmenize olanak tanı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.

  1. Azure portalında oturum açın ve Kaynak grupları'nı seçin.
  2. Ada göre filtrele kutusuna kaynak grubunuzun adını girin.
  3. Genel bir bakış görmek için sonuç listesinde kaynak grubu adını seçin.
  4. Kaynak grubunu sil'i seçin.
  5. 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 Azure App Configuration'ı bir Azure İşlevleri uygulamasıyla tümleştirdiniz. İşlev uygulamanızın yapılandırma ayarlarını dinamik olarak yenilemesini nasıl etkinleştireceğinizi öğrenmek için sonraki öğreticiye geçin.

Azure İşlevleri uygulamanızda Azure Uygulama Yapılandırması'ndan özellik bayraklarını kullanmayı öğrenmek için aşağıdaki öğreticiye geçin.

Uygulama Yapılandırması'na erişimi kolaylaştırmak için Azure yönetilen kimliğini kullanmayı öğrenmek için aşağıdaki öğreticiye geçin.