Hier ist eine Lösung für diejenigen, die sie mit Entity Framework aus der Datenbank entfernen möchten :
prods.RemoveWhere(s => s.ID == 1);
Und die Erweiterungsmethode selbst:
using System;
using System.Linq;
using System.Linq.Expressions;
using Microsoft.EntityFrameworkCore;
namespace LivaNova.NGPDM.Client.Services.Data.Extensions
{
public static class DbSetExtensions
{
public static void RemoveWhere<TEntity>(this DbSet<TEntity> entities, Expression<Func<TEntity, bool>> predicate) where TEntity : class
{
var records = entities
.Where(predicate)
.ToList();
if (records.Count > 0)
entities.RemoveRange(records);
}
}
}
PS Dies simuliert die Methode RemoveAll()
, die für DB-Sets des Entity Frameworks nicht verfügbar ist.