.NET API - التعامل مع HTTP Methods: GET, POST, PUT, DELETE

1.7 ‎.NET API - التعامل مع HTTP Methods: GET, POST, PUT, DELETE

تُستخدم HTTP Methods في Web API لتحديد نوع العملية المطلوب تنفيذها على البيانات. في ASP.NET Core Web API، يتم ربط كل Method بميزة محددة من خلال Attribute مثل: [HttpGet] أو [HttpPost].

📥 1. GET - جلب البيانات

يستخدم للحصول على البيانات من السيرفر.

[HttpGet]
public IActionResult GetAll()
{
    return Ok(_context.Products.ToList());
}

مثال على الطلب في Postman أو المتصفح:

GET http://localhost:5000/api/products

📤 2. POST - إضافة بيانات جديدة

يُستخدم لإنشاء سجل جديد في قاعدة البيانات.

[HttpPost]
public IActionResult Create(Product product)
{
    _context.Products.Add(product);
    _context.SaveChanges();
    return Ok(product);
}

مثال على بيانات تُرسل في جسم الطلب:

{
  "name": "New Product",
  "price": 200
}

✏️ 3. PUT - تحديث البيانات

يُستخدم لتحديث سجل موجود بالكامل.

[HttpPut("{id}")]
public IActionResult Update(int id, Product product)
{
    if (id != product.Id) return BadRequest();
    _context.Entry(product).State = EntityState.Modified;
    _context.SaveChanges();
    return NoContent();
}

🗑️ 4. DELETE - حذف البيانات

يُستخدم لحذف سجل من قاعدة البيانات.

[HttpDelete("{id}")]
public IActionResult Delete(int id)
{
    var product = _context.Products.Find(id);
    if (product == null) return NotFound();
    _context.Products.Remove(product);
    _context.SaveChanges();
    return NoContent();
}

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

  • ✅ استخدم [HttpGet] للعرض فقط، ولا تُرسل معه بيانات في Body.
  • [HttpPost] و[HttpPut] يحتاجان Body بصيغة JSON.
  • ✅ تأكد من إرسال Content-Type: application/json في الرؤوس (Headers) عند POST/PUT.

📚 خلاصة

  • GET: قراءة البيانات.
  • POST: إنشاء بيانات.
  • PUT: تحديث بيانات.
  • DELETE: حذف بيانات.

تعليقات

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

C# - Arrays

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

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