Est-il possible d'obtenir LINQ to SQL pour supprimer un enregistrement en utilisant le PK, sans charger l'enregistrement en premier? Similaire à la fonctionnalité d'objet proxy de NHibernate?Supprimer un enregistrement LINQ to SQL sans le charger d'abord
6
A
Répondre
15
Vous devriez être en mesure de le faire de cette façon:
var person = new Person();
person.ID = someID;
using (var context = new DataContext(connString))
{
context.Persons.Attach(person, false); //attach is as unmodified
context.Persons.DeleteOnSubmit(person); //remove it
context.SubmitChanges(); //submit changes to db
}
3
Ajout à la réponse de Joseph:
Vous pouvez avoir du mal à supprimer de cette manière si votre entité a des champs pour lesquels UpdateCheck est réglé sur Toujours, sauf si vous définissez ces champs comme appropriés. En outre, si vous supprimez plusieurs entités liées où des contraintes FK sont impliquées, vous pouvez avoir des problèmes si les entités ne sont pas supprimées dans la séquence appropriée (entraînant une violation de contrainte). Pour éviter cela, définissez tous les champs concernés par ces FK, le cas échéant.
Questions connexes
- 1. LINQ to SQL batch supprimer
- 2. LINQ to SQL .sum() sans groupe ... en
- 3. LINQ to sql Beaucoup-un
- 4. Linq to SQL: comment agréger sans un groupe?
- 5. LINQ to SQL
- 6. Associations LINQ to SQL?
- 7. Sql Query to Linq To Sql
- 8. Classes LINQ to SQL
- 9. Impossible d'ouvrir le concepteur linq-to-sql
- 10. Comment supprimer linq en sql?
- 11. LINQ to SQL, Generalization
- 12. LINQ to SQL: Concurrency résolution
- 13. LINQ To SQL Paging
- 14. Linq to SQl
- 15. LINQ-to-SQL IN()
- 16. linq to sql "Contient"
- 17. LINQ to SQL context.GetChanges
- 18. Linq-to-SQL ToDictionary()
- 19. LINQ to SQL Groupement
- 20. LINQ to SQL Particularités
- 21. LINQ to SQL Insert
- 22. Erreur LINQ to SQL
- 23. LINQ to SQL: Insérer une clé primaire sans identité
- 24. Linq To SQL: Puis-je charger un seul champ dans une table jointe?
- 25. LINQ to SQL Math.Round Problème
- 26. Renvoie un nombre avec linq-to-sql
- 27. Division Linq to SQL Entité
- 28. Comment trouver le ROW_NUMBER() d'une ligne avec Linq to SQL
- 29. LINQ to SQL Table Coalesce
- 30. La mise à jour Linq to Sql crée un enregistrement en double