
آموزش AddRange و RemoveRange در EF Core
در آموزش AddRange و RemoveRange در EF Core و Asp.Net Core به بررسی دو متد مهم AddRange و RemoveRange در Entity Framework Core میپردازیم که برای عملیات گروهی استفاده میشوند. همچنین بررسی میکنیم. در برنامههایی که نیاز به افزودن یا حذف چندین داده بهصورت همزمان داریم، استفاده از AddRange و RemoveRange بهترین گزینه است. این متدها باعث کاهش تعداد دفعات فراخوانی به دیتابیس و بهبود عملکرد میشوند.
آموزش کار با AddRange
در Entity Framework Core، متدهای AddRange برای افزودن چندین موجودیت – Entity بهصورت همزمان به DbContext استفاده میشوند. این متدها باعث کاهش تعداد فراخوانیها به دیتابیس و افزایش سرعت عملیات درج میشوند.
مثال کاربردی AddRange
var categories = new List<Category>
{
new Category { Name = "Frontend" },
new Category { Name = "Backend" },
new Category { Name = "Database" }
};
_context.Categories.AddRange(categories);
await _context.SaveChangesAsync();این کد سه Category را بهصورت گروهی به دیتابیس اضافه میکند.
آموزش کار با RemoveRange
RemoveRange متدی در EF Core است که برای حذف چندین موجودیت – Entity بهصورت گروهی از DbContext استفاده میشود.
مثال کاربردی RemoveRange
var oldCategories = _context.Categories
.Where(c => c.Name.Contains("Test"))
.ToList();
_context.Categories.RemoveRange(oldCategories);
await _context.SaveChangesAsync();در این مثال، تمام Category هایی که نامشان شامل “Test” باشد حذف میشوند. اگر هیچ رکوردی یافت نشود، EF Core عملیات حذف را انجام نمیدهد.
نکات عملکردی
- بهتر است قبل از AddRange از وجود دادهها در دیتابیس مطمئن شوید تا دادهی تکراری درج نشود.
- متد RemoveRange تنها Entityهایی را حذف میکند که در Context ردیابی شده باشند. برای حذف مستقیم از دیتابیس، باید از Raw SQL یا EF Extensions استفاده کرد.






















با سلام و احترام
بسیار بسیار از زحمات شما کمال تقدیر و تشکر را دارم خیلی عالی و کاربردی بود. فقط پیشنهاد می گردد در صورت امکان و فرصت مباحث زیر را نیز ویدیوی آموزشی تهیه گردد:
Identity, Authorization, Security
Clean Architecture
Asp.Net Core Web API
Minimal API
با سپاس فراوان و آرزوی موفقیت و سلامتی روزافزون
این دوره رو در تاریخ ۱۴۰۴/۰۹/۲۹ تمام کردم.
استاد عزیز
واقعاً ممنون بابت دورهی پیشرفته ASP.NET Core.
نحوهی تدریس، مثالهای عملی و انتقال تجربهتون باعث شد خیلی از مفاهیم پیچیده برام شفاف و قابل استفاده بشه.
این دوره قطعاً یکی از تأثیرگذارترین و کاملتربن دورههایی بود که گذروندم.
براتون آرزوی سلامتی و موفقیت روزافزون دارم