مشاركة عبر


التشغيل السريع: إنشاء تطبيق .NET Core فيAzure App Configuration

في هذا التشغيل السريع، ستستخدم Azure App Configuration لإضفاء الطابع الخارجي على التخزين وإدارة إعدادات التطبيق لتطبيق ASP.NET Core. يقوم ASP.NET Core بإنشاء كائن تكوين واحد يستند إلى قيمة المفتاح باستخدام إعدادات من موفر تكوين واحد أو أكثر. يوفر App Configuration مكتبة موفر تكوين .NET. لذلك، يمكنك استخدام App Configuration كمصدر تكوين إضافي لتطبيقك. إذا كان لديك تطبيق موجود، لبدء استخدام App Configuration، فستحتاج فقط إلى بعض التغييرات الصغيرة على التعليمات البرمجية لبدء تشغيل التطبيق.

المتطلبات الأساسية

تلميح

Azure Cloud Shell هو عبارة عن غلاف تفاعلي مجاني يمكنك استخدامه لتنفيذ تعليمات سطر الأوامر الواردة في هذه المقالة. يحتوي على أدوات Azure الشائعة المثبتة مسبقا، بما في ذلك .NET SDK. إذا قمت بتسجيل الدخول إلى اشتراك Azure الخاص بك، فشغل Azure Cloud Shell من shell.azure.com. يمكنك معرفة المزيد عن Azure Cloud Shell من خلال قراءة وثائقنا ذات الصلة

إضافة قيم المفاتيح

أضف قيم المفاتيح التالية إلى متجر App Configuration واترك Label و Content Type بقيمهما الافتراضية. لمزيد من المعلومات حول كيفية إضافة قيم المفاتيح إلى مخزن باستخدام مدخل Microsoft Azure أو CLI، انتقل إلى إنشاء قيمة مفتاح.

مفتاح القيمة
TestApp: الإعدادات: BackgroundColor أبيض
TestApp:الإعدادات:FontColor أسود
TestApp:الإعدادات:حجم الخط 24
TestApp:الإعدادات:رسالة البيانات من Azure App Configuration

قم بإنشاء تطبيق ويب ASP.NET Core

استخدم واجهة سطر الأوامر .NET (CLI) لإنشاء مشروع تطبيق ويب جديد ASP.NET Core. يوفر Azure Cloud Shell هذه الأدوات لك. ومتوفرة أيضًا عبر منصات Windows و.macOS ،Linux

قم بتشغيل الأمر التالي لإنشاء تطبيق ويب ASP.NET Core في مجلد TestAppConfig جديد:

dotnet new webapp --output TestAppConfig

الاتصال بمتجر App Configuration

اتصل بمخزن App Configuration باستخدام معرف Microsoft Entra (مستحسن) أو سلسلة الاتصال.

  1. انتقل إلى دليل المشروع TestAppConfig، وقم بتشغيل الأمر التالي لإضافة مراجع حزمة NuGet.

    dotnet add package Microsoft.Azure.AppConfiguration.AspNetCore
    dotnet add package Azure.Identity
    
  2. إنشاء سر مستخدم للتطبيق عن طريق الانتقال إلى المجلد TestAppConfig وتشغيل الأمر التالي.

    يستخدم الأمر Secret Manager لتخزين سر يسمى Endpoints:AppConfiguration، والذي يخزن نقطة النهاية لمخزن App Configuration. استبدل <your-App-Configuration-endpoint> العنصر النائب بنقطة نهاية متجر App Configuration. يمكنك العثور على نقطة النهاية في شفرة نظرة عامة على متجر App Configuration في مدخل Microsoft Azure.

    dotnet user-secrets init
    dotnet user-secrets set Endpoints:AppConfiguration "<your-App-Configuration-endpoint>"
    
  3. افتح Program.cs وأضف مساحات الأسماء التالية:

    using Microsoft.Extensions.Configuration;
    using Microsoft.Azure.AppConfiguration.AspNetCore;
    using Azure.Identity;
    
  4. اتصل بمخزن App Configuration الخاص بك عن طريق استدعاء AddAzureAppConfiguration الأسلوب في Program.cs الملف.

    يمكنك استخدام DefaultAzureCredential للمصادقة على متجر App Configuration. اتبع الإرشادات لتعيين بيانات الاعتماد الخاصة بك دور قارئ بيانات تكوين التطبيق. تأكد من السماح بوقت كاف للإذن للنشر قبل تشغيل التطبيق الخاص بك.

    var builder = WebApplication.CreateBuilder(args); 
    
    // Retrieve the endpoint
    string endpoint = builder.Configuration.GetValue<string>("Endpoints:AppConfiguration")
        ?? throw new InvalidOperationException("The setting `Endpoints:AppConfiguration` was not found.");
    
    // Load configuration from Azure App Configuration 
    builder.Configuration.AddAzureAppConfiguration(options =>
    {
        options.Connect(new Uri(endpoint), new DefaultAzureCredential());
    });
    
    // The rest of existing code in program.cs
    // ... ...    
    

    تقوم هذه التعليمة البرمجية بتحميل كافة قيم المفاتيح التي لا تحتوي على تسمية من متجر App Configuration. لمزيد من المعلومات حول تحميل البيانات من App Configuration، راجع مرجع واجهة برمجة تطبيقات موفر تكوين التطبيق.

القراءة من متجر App Configuration

في هذا المثال، ستقوم بتحديث صفحة ويب لعرض محتواها باستخدام الإعدادات التي قمت بتكوينها في متجر App Configuration.

  1. أضف ملف Settings.cs في جذر دليل المشروع. وهو يحدد فئة مكتوبة Settings بقوة للتكوين الذي ستستخدمه. قم باستبدال مساحة الاسم باسم المشروع الخاص بك.

    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; }
        }
    }
    
  2. ربط المقطع في TestApp:Settings التكوين بالعنصر Settings .

    تحديث Program.cs باستخدام التعليمات البرمجية التالية وإضافة 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
    // ... ...
    
  3. افتح Index.cshtml.cs في دليل Pages ، وقم بتحديث IndexModel الفئة بالتعليمات البرمجية التالية. using Microsoft.Extensions.Options أضف مساحة الاسم في بداية الملف، إذا لم تكن موجودة بالفعل.

    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;
        }
    }
    
  4. افتح Index.cshtml في دليل Pages ، وقم بتحديث المحتوى بالتعليمات البرمجية التالية.

    @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>
    

يوصى بإنشاء التطبيق وتشغيله محليًا

  1. لإنشاء التطبيق باستخدام .NET CLI، انتقل إلى الدليل الجذر لمشروعك. تشغيل الأمر التالي في أمر shell:

    dotnet build
    
  2. بعد اكتمال الإنشاء بنجاح، قم بتشغيل الأمر التالي لتشغيل تطبيق الويب محليًا:

    dotnet run
    
  3. يحتوي إخراج الأمر على dotnet run عنواني URL. افتح مستعرضا وانتقل إلى أي من عناوين URL هذه للوصول إلى التطبيق الخاص بك. على سبيل المثال: https://localhost:5001.

    إذا كنت تعمل في Azure Cloud Shell، فحدد الزر Web Preview متبوعاً بـ Configure. عند مطالبتك بتكوين المنفذ للمعاينة، أدخل 5000، وحدد فتح واستعراض.

    لقطة شاشة ل Azure Cloud Shell. حدد موقع Web Preview.

    تبدو صفحة الويب كما يلي: لقطة شاشة للمتصفح. تشغيل تطبيق التشغيل السريع محليا.

تنظيف الموارد

إذا كنت لا تريد مواصلة استخدام الموارد التي تم إنشاؤها في هذه المقالة، يوصى بحذف مجموعة الموارد التي أنشأتها هنا لتجنب الرسوم.

هام

حذف مجموعة الموارد لا يمكن التراجع عنه. يتم حذف مجموعة الموارد وجميع الموارد المضمنة فيها نهائيًا. تأكد من عدم حذفك للموارد أو مجموعة المورد الخاطئة عن غير قصد. في حالة إنشاء الموارد لهذه المقالة داخل مجموعة موارد تشتمل على موارد أخرى تريد الاحتفاظ بها، احذف كل مورد على حدة من الجزء الخاص به بدلًا من حذف مجموعة الموارد.

  1. سجل الدخول إلى مدخل Microsoft Azure، وحدد Resource groups.
  2. في المربع تصفية حسب الاسم ، أدخل اسم مجموعة الموارد الخاصة بك.
  3. في قائمة النتائج، حدد اسم مجموعة الموارد لاستعراض نظرة عامة.
  4. حدد Delete resource group.
  5. يُطلب منك تأكيد حذف مجموعة الموارد. أدخل اسم مجموعة الموارد للتأكيد وحدد "Delete".

بعد بضع لحظات، يتم حذف مجموعة الموارد وكافة مواردها.

الخطوات التالية

في هذه البداية السريعة، قمت بـ:

  • توفير متجر App Configuration جديد.
  • متصل بمخزن App Configuration باستخدام مكتبة موفر App Configuration.
  • اقرأ قيم مفاتيح متجر App Configuration باستخدام مكتبة موفر التكوين.
  • عرض صفحة ويب باستخدام الإعدادات التي قمت بتكوينها في متجر App Configuration.

لمعرفة كيفية تكوين تطبيق الويب ASP.NET Core لتحديث إعدادات التكوين ديناميكيا، تابع البرنامج التعليمي التالي.