Посмотрите на эту строку:
db.Orders.ToList().RemoveAll(x => x.OrderId == orderId);
Вы удаляете элемент из материализованной коллекции, а не из базы данных (после вызова ToList()
вы попали в коллекцию памяти, она может быть изменена и база данных не будет обновлена). Чтобы удалить элемент из базы данных, выполните:
var ordersToRemove = db.Orders.Where(x => x.OrderId == orderId);
db.Orders.RemoveRange(ordersToRemove);