Entity Framework 4 Multiple Object Supprimer (RemoveAll)
-
21-09-2019 - |
Question
Je lis que le nouveau Entity Framework comprendra une méthode pour supprimer plusieurs éléments (LINQ to SQL a DeleteAllOnSubmit ()) mais je ne peux pas trouver la fonction / méthode pour le faire.
Est-ce dans la version bêta 2 ou dois-je faire mon propre?
Mise à jour:
est ce que je suis maintenant avec:
public void DeleteObjects(IEnumerable<object> objects)
{
foreach (object o in objects)
{
DeleteObject(o);
}
SaveChanges();
}
La solution
EF 4 permet d'exécuter des instructions TSQL contre un contexte d'objet:
using (var context = new EntityFrameworkExampleEntities())
{
var count =
context.ExecuteStoreCommand(@"DELETE FROM Companies WHERE [CompanyID]=4");
}
Voir le blog suivant pour plus de détails.
Autres conseils
Je sais que c'est en retard, mais j'ai trouvé ce post et trouvé une solution plus simple, qui n'a pas été publié. Vous pouvez définir OnDelete à Cascade dans les propriétés de l'Association. Dans VS2012 ouvrir le fichier edmx. Cliquez sur l'association et vous trouverez la OnDelete dans l'onglet Propriétés. Vous pouvez ensuite utiliser la méthode Remove () sans déclencheurs ou tout autre traitement spécial.