در Entity framework به کمک امکانات LINQ، نمیتوان چندین رکورد را با هم (یکجا) حذف کرد یا به روز رسانی نمود. برای مثال دستوراتی مانند Delete from tbl1 where id>3 و یا update tbl1 set f1=2 where id>3 معادلی در LINQ to EF ندارند. برای انجام اینگونه امور یا باید رویه ذخیره شده نوشت و سپس آنرا در EF فراخوانی کرد؛ یا دستورات SQL خام را مستقیما بر روی بانک اطلاعاتی اجرا کرد و یا باید حلقهای را تشکیل داد و موارد موجود را یک به یک ویرایش یا حذف نمود. مورد آخر خصوصا از لحاظ کارآیی به هیچ عنوان پذیرفتنی نیست.
البته اکثر ORMهای موجود از Bulk operations پشتیبانی نمیکنند و این مورد منحصر به EF نیست. علت آن هم به مشکل بودن هماهنگ سازی Context و بانک اطلاعاتی، پس از Bulk operations بر میگردد. برای مثال در یک کوئری حذف پیچیده، هماهنگ سازی سطح اول کش یا Tracking API با رکوردهای باقی مانده در بانک اطلاعاتی کار سادهای نیست و اگر اینکار به نحو صحیحی صورت نگیرد، کاربران در حین ذخیره سازی اطلاعات ممکن است با خطاهای همزمانی متوقف شوند (چون هنوز رکوردهای حذف شده در سطح اول کش یا Context وجود دارند، ORM تصور میکند کاربر دیگری اطلاعات را حذف کرده است و یک استثنای همزمانی را صادر خواهد کرد).
معرفی Entity Framework Extended Library
کتابخانه «Entity Framework Extended Library» تعدادی متد الحاقی را به EF جهت اعمال Bulk delete و Bulk update سازگار با کوئریهای تهیه شده به وسیله امکانات LINQ to EF، اضافه میکند. البته این کتابخانه امکانات دیگری مانند Future Queries (یکی کردن چند کوئری متفاوت LINQ جهت اجرا در یک رفت و برگشت به بانک اطلاعاتی)، Query Result Cache (سطح دوم کش) را نیز به همراه دارد.