التشغيل السريع: إنشاء تطبيق .NET Core فيAzure App Configuration
في هذا التشغيل السريع، ستستخدم Azure App Configuration لإضفاء الطابع الخارجي على التخزين وإدارة إعدادات التطبيق لتطبيق ASP.NET Core. يقوم ASP.NET Core بإنشاء كائن تكوين واحد يستند إلى قيمة المفتاح باستخدام إعدادات من موفر تكوين واحد أو أكثر. يوفر App Configuration مكتبة موفر تكوين .NET. لذلك، يمكنك استخدام App Configuration كمصدر تكوين إضافي لتطبيقك. إذا كان لديك تطبيق موجود، لبدء استخدام App Configuration، فستحتاج فقط إلى بعض التغييرات الصغيرة على التعليمات البرمجية لبدء تشغيل التطبيق.
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حسابًا مجانًا.
- متجر App Configuration. إنشاء متجر.
- .NET SDK 6.0 أو أحدث
تلميح
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 | white |
TestApp:الإعدادات:FontColor | black |
TestApp:Settings:FontSize | 24 |
TestApp:الإعدادات:Message | البيانات من 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 --framework net6.0
الاتصال بمتجر App Configuration
انتقل إلى دليل المشروع TestAppConfig، وقم بتشغيل الأمر التالي لإضافة مرجع حزمة Microsoft.Azure.AppConfiguration.AspNetCore NuGet:
dotnet add package Microsoft.Azure.AppConfiguration.AspNetCore
قم بتشغيل الأمر التالي. يستخدم الأمر Secret Manager لتخزين سر يسمى
ConnectionStrings:AppConfig
، والذي يخزن سلسلة الاتصال لمتجر App Configuration. استبدل العنصر النائب<your_connection_string>
بسلسلة اتصال متجر تكوين التطبيق. يمكنك العثور على سلسلة الاتصال ضمن Access Keys من متجر App Configuration في مدخل Microsoft Azure.dotnet user-secrets init dotnet user-secrets set ConnectionStrings:AppConfig "<your_connection_string>"
تلميح
ستقوم بعض الأغلفة باقتطاع سلسلة الاتصال ما لم تكن مضمنة في علامات الاقتباس. تأكد من
dotnet user-secrets list
أن إخراج الأمر يظهر سلسلة الاتصال بأكمله. إذا لم يكن كذلك، فأعد تشغيل الأمر مع إرفاق سلسلة الاتصال في الاقتباس.يخزن Secret Manager البيانات السرية خارج شجرة المشروع، مما يساعد على منع المشاركة العرضية للبيانات السرية داخل التعليمات البرمجية المصدر. يتم استخدامه فقط لاختبار تطبيق الويب محليا. عند نشر التطبيق في Azure مثل App Service، استخدم سلاسل الاتصال ion أو إعدادات التطبيق أو متغيرات البيئة لتخزين سلسلة الاتصال. بدلا من ذلك، لتجنب سلسلة الاتصال معا، يمكنك الاتصال ب App Configuration باستخدام الهويات المدارة أو هويات Microsoft Entra الأخرى.
افتح Program.cs وأضف Azure App Configuration كمصدر تكوين إضافي عن طريق استدعاء
AddAzureAppConfiguration
الأسلوب .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 // ... ...
ستتصل هذه التعليمة البرمجية بمخزن App Configuration الخاص بك باستخدام سلسلة الاتصال وتحميل كافة القيم الرئيسية التي لا تحتوي على تسميات. لمزيد من المعلومات حول موفر تكوين التطبيق، راجع مرجع واجهة برمجة تطبيقات موفر تكوين التطبيق.
القراءة من متجر App Configuration
في هذا المثال، ستقوم بتحديث صفحة ويب لعرض محتواها باستخدام الإعدادات التي قمت بتكوينها في متجر App Configuration.
أضف ملف الإعدادات.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; } } }
ربط المقطع في
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 // ... ...
افتح 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; } }
افتح 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>
يوصى بإنشاء التطبيق وتشغيله محليًا
لإنشاء التطبيق باستخدام .NET CLI، انتقل إلى الدليل الجذر لمشروعك. تشغيل الأمر التالي في أمر shell:
dotnet build
بعد اكتمال الإنشاء بنجاح، قم بتشغيل الأمر التالي لتشغيل تطبيق الويب محليًا:
dotnet run
يحتوي إخراج الأمر على
dotnet run
عنواني URL. افتح مستعرضا وانتقل إلى أي من عناوين URL هذه للوصول إلى التطبيق الخاص بك. على سبيل المثال:https://localhost:5001
.إذا كنت تعمل في Azure Cloud Shell، فحدد الزر Web Preview متبوعاً بـ Configure. عند مطالبتك بتكوين المنفذ للمعاينة، أدخل 5000، وحدد فتح واستعراض.
تبدو صفحة الويب كما يلي:
تنظيف الموارد
إذا كنت لا تريد مواصلة استخدام الموارد التي تم إنشاؤها في هذه المقالة، يوصى بحذف مجموعة الموارد التي أنشأتها هنا لتجنب الرسوم.
هام
حذف مجموعة الموارد لا يمكن التراجع عنه. يتم حذف مجموعة الموارد وجميع الموارد المضمنة فيها نهائيًا. تأكد من عدم حذفك للموارد أو مجموعة المورد الخاطئة عن غير قصد. في حالة إنشاء الموارد لهذه المقالة داخل مجموعة موارد تشتمل على موارد أخرى تريد الاحتفاظ بها، احذف كل مورد على حدة من الجزء الخاص به بدلًا من حذف مجموعة الموارد.
- سجل الدخول إلى مدخل Microsoft Azure، وحدد Resource groups.
- في المربع تصفية حسب الاسم ، أدخل اسم مجموعة الموارد الخاصة بك.
- في قائمة النتائج، حدد اسم مجموعة الموارد لاستعراض نظرة عامة.
- حدد Delete resource group.
- يُطلب منك تأكيد حذف مجموعة الموارد. أدخل اسم مجموعة الموارد للتأكيد وحدد "Delete".
بعد بضع لحظات، يتم حذف مجموعة الموارد وكافة مواردها.
الخطوات التالية
في هذه البداية السريعة، قمت بـ:
- توفير متجر App Configuration جديد.
- الاتصال إلى متجر App Configuration الخاص بك باستخدام مكتبة موفر تكوين التطبيق.
- اقرأ قيم مفاتيح متجر App Configuration باستخدام مكتبة موفر التكوين.
- عرض صفحة ويب باستخدام الإعدادات التي قمت بتكوينها في متجر App Configuration.
لمعرفة كيفية تكوين تطبيق الويب ASP.NET Core لتحديث إعدادات التكوين ديناميكيا، تابع البرنامج التعليمي التالي.