.NET API - قراءة الـappsettings.json وربط البيانات

1.8 ‎.NET API - قراءة الـappsettings.json وربط البيانات

ملف appsettings.json هو ملف الإعدادات الرئيسي في مشاريع ASP.NET Core، ويُستخدم لتخزين إعدادات التطبيق مثل بيانات الاتصال، مفاتيح API، إعدادات التكوين الخاصة، وغيرها.

🧾 تنسيق ملف appsettings.json

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=.;Database=MyDb;Trusted_Connection=True;"
  },
  "MyAppSettings": {
    "SiteTitle": "Drift CMS",
    "ItemsPerPage": 10
  }
}

📦 قراءة الإعدادات في C#

يمكنك إنشاء كلاس يمثل القسم الذي تريد قراءته:

public class MyAppSettings
{
    public string SiteTitle { get; set; }
    public int ItemsPerPage { get; set; }
}

ثم تسجله في Program.cs:

builder.Services.Configure<MyAppSettings>(
    builder.Configuration.GetSection("MyAppSettings"));

🧠 استخدام الإعدادات داخل Controller أو Service

using Microsoft.Extensions.Options;

[ApiController]
[Route("api/[controller]")]
public class SettingsController : ControllerBase
{
    private readonly MyAppSettings _settings;

    public SettingsController(IOptions<MyAppSettings> options)
    {
        _settings = options.Value;
    }

    [HttpGet]
    public IActionResult GetSettings()
    {
        return Ok(_settings);
    }
}

📌 ملاحظات مهمة

  • ✅ استخدم IOptions<T> للحصول على الإعدادات داخل أي خدمة أو Controller.
  • ✅ يمكنك تخصيص أقسام متعددة داخل appsettings.json حسب الحاجة.
  • ✅ لا تضع معلومات حساسة في هذا الملف إذا كنت سترفع المشروع على GitHub.

💡 استخدام مباشر بدون كلاس

يمكنك أيضًا قراءة القيمة مباشرة:

var siteTitle = builder.Configuration["MyAppSettings:SiteTitle"];

تعليقات

المشاركات الشائعة من هذه المدونة

C# - Arrays

Entity Framework - ما هو ORM؟ ونبذة عن Dapper وNHibernate

Entity Framework - مقدمة عن Entity Framework