В чем разница между этими тремя строками
var courses = _context.Courses
.Include("AssignedCustomers")
.Include("PricingSchedule")
.Include("Licenses")
.Include("GroupCourses")
.Include("GroupLicenses")
.Where(e => courseIds.Contains(e.Id)).ToList();
courses.ForEach(currentCourse =>
{
Первый
_context.CustomerCourses.RemoveRange(currentCourse.AssignedCustomers);
Второй
currentCourse.AssignedCustomers.ToList().ForEach(ac =>
{
_context.Entry(ac).State = EntityState.Deleted;
});
Третий
currentCourse.AssignedCustomers.ToList().ForEach(ac =>
{
currentCourse.AssignedCustomers.Remove(ac);
});
}
Когда использовать что и в каком сценарии? Я всегда старался определить, какой из них следует использовать. Я пробую каждый подход, какой бы ни работал для меня, я сохраняю это. Но, честно говоря, я не понимаю концепции здесь