Entity Framework - حذف البيانات (Delete)
Entity Framework Core - حذف البيانات (Delete)
عملية حذف السجلات من قاعدة البيانات باستخدام EF Core تتم بطريقة بسيطة جدًا عن طريق جلب الكائن المطلوب حذفه ثم استخدام الدالة Remove لحذفه من DbContext.
🔹 الخطوات الأساسية لحذف البيانات:
- 1️⃣ جلب السجل الذي ترغب بحذفه.
- 2️⃣ استخدام الدالة
Removeلحذفه من DbContext. - 3️⃣ استدعاء
SaveChangesAsyncلتطبيق التغييرات.
🔹 مثال عملي على حذف طالب:
// ملف Pages/DeleteStudent.razor
@page "/deletestudent/{Id:int}"
@inject ApplicationDbContext db
@inject NavigationManager Navigation
<h3>حذف طالب</h3>
@if (student == null)
{
<p>جاري التحميل...</p>
}
else
{
<div class="alert alert-danger">
هل أنت متأكد أنك تريد حذف الطالب: @student.Name ؟
</div>
<button class="btn btn-danger" @onclick="DeleteStudent">تأكيد الحذف</button>
<button class="btn btn-secondary" @onclick="@(() => Navigation.NavigateTo("/studentslist"))">إلغاء</button>
}
@code {
[Parameter]
public int Id { get; set; }
private Student student;
protected override async Task OnInitializedAsync()
{
student = await db.Students.FindAsync(Id);
}
private async Task DeleteStudent()
{
db.Students.Remove(student);
await db.SaveChangesAsync();
Navigation.NavigateTo("/studentslist");
}
}
---
🔹 شرح الكود:
- نقوم بجلب الطالب بواسطة
FindAsyncعند تحميل الصفحة. - عند الضغط على زر "تأكيد الحذف"، يتم استدعاء الدالة
DeleteStudent. - نستخدم
Removeلإزالة الطالب من DbContext، ثم نحفظ التغييرات. - بعد الحذف، يتم إعادة التوجيه إلى صفحة عرض الطلاب.
🔹 ملاحظة مهمة:
✅ تأكد قبل تنفيذ عملية الحذف أنك فعلاً قد جلبت الكائن المطلوب وتحققت من وجوده لتجنب حدوث أخطاء.
تعليقات
إرسال تعليق