البرمجة

تكوين إعدادات .NET Core حسب البيئة

عند العمل على تطبيقات .NET Core بنسخة 1.0.0، يمكنك تكوين إعدادات التطبيق بناءً على البيئة باستخدام ملفات الإعداد المناسبة، مثل appSettings.dev.json و appSettings.test.json. ومن أجل تحقيق ذلك في تطبيق الكونسول، يمكنك اتباع بعض الخطوات البسيطة.

أولاً، يمكنك استخدام مكتبة Microsoft.Extensions.Configuration لتحميل وتكوين ملفات التهيئة بناءً على البيئة. يمكنك ببساطة إضافة حزمة NuGet Microsoft.Extensions.Configuration.Json لاستخدامها في تحميل الملفات JSON.

بعد ذلك، يمكنك إنشاء كائن IConfiguration وتمريره إلى تطبيقك لاستخدام الإعدادات. هذا يمكن أن يتم في نقطة الدخول الرئيسية لتطبيق الكونسول.

الآن، لجعل التطبيق يستخدم ملفات التكوين المناسبة وفقاً للبيئة، يمكنك استخدام البيئة المعروفة في .NET Core باستخدام الفاريابل EnvironmentName. يمكنك تحديد البيئة المطلوبة عند تشغيل التطبيق باستخدام متغير البيئة في نظام التشغيل.

فيما يلي مثال لكيفية تحقيق ذلك:

csharp
using Microsoft.Extensions.Configuration; using System; using System.IO; class Program { static void Main(string[] args) { // Load configuration var environmentName = Environment.GetEnvironmentVariable("EnvironmentName") ?? "dev"; var configuration = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile($"appSettings.{environmentName}.json", optional: true, reloadOnChange: true) .Build(); // Use configuration var settingValue = configuration["SettingKey"]; // Your application logic goes here } }

في هذا المثال، يتم استخدام Environment.GetEnvironmentVariable("EnvironmentName") للحصول على اسم البيئة المطلوبة. وإذا لم يتم تحديد قيمة محددة، فإن القيمة الافتراضية هي “dev”. ثم يتم استخدام هذا الاسم لتحميل ملف التكوين المناسب باستخدام AddJsonFile($"appSettings.{environmentName}.json").

بهذه الطريقة، يمكنك تكوين تطبيقك لاستخدام إعدادات مختلفة بناءً على البيئة التي يتم تشغيلها فيها، بنفس الطريقة التي تعمل بها تطبيقات ASP.NET Core.

المزيد من المعلومات

بالطبع، دعنا نواصل تحسين المقال وإضافة بعض التفاصيل والشروحات لجعله أكثر اكتمالًا وفائدة:

csharp
using Microsoft.Extensions.Configuration; using System; using System.IO; class Program { static void Main(string[] args) { // Load configuration var environmentName = Environment.GetEnvironmentVariable("EnvironmentName") ?? "dev"; var configuration = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile($"appSettings.{environmentName}.json", optional: true, reloadOnChange: true) .Build(); // Use configuration var settingValue = configuration["SettingKey"]; // Example usage Console.WriteLine($"Value of SettingKey is: {settingValue}"); // Your application logic goes here } }

في هذا المثال المحسّن، تم إضافة تفاصيل إضافية لتوضيح استخدام التكوين في تطبيق الكونسول. بعد تحميل التكوين، يمكنك استخدام القيم المحملة في التكوين كما تحتاج. على سبيل المثال، قمنا بطباعة قيمة الإعداد “SettingKey” إلى الإخراج لإظهار كيفية الوصول إليها.

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

ومن المهم أيضًا الإشارة إلى أنه يمكنك تعيين قيمة متغير البيئة EnvironmentName قبل تشغيل التطبيق. على سبيل المثال، يمكنك تعيينه في البيئة قبل تشغيل البرنامج كما يلي في نظام التشغيل Windows:

arduino
set EnvironmentName=dev

أو في نظام Linux/macOS:

arduino
export EnvironmentName=dev

باستخدام هذه الأساليب، يمكنك تكوين تطبيق .NET Core الخاص بك بسهولة وفعالية لاستخدام إعدادات مختلفة بناءً على البيئة، وهو أمر حيوي لتطوير واختبار التطبيقات بفعالية.

مقالات ذات صلة

زر الذهاب إلى الأعلى