Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Matthieu MEZIL

I love .Net

Abonnements

EF : problème de réattachement quand le contexte a été disposé

Quand nous avions préparé notre session pour les techdays avec Michel, nous étions tombé sur le problème suivant : quand on a obtenu une entité et que le context a été disposé, il n'est plus possible de réattacher l'entité à un autre context. En fait si, il y a deux possibilités comme j'ai répondu à Julie qui s'est trouvée confrontée au même problème :

Surcharger le Dispose sur l'ObjectContext pour détacher les entités

partial class MyObjectContext

{

    protected override void Dispose(bool disposing)

    {

        foreach (var entry in ObjectStateManager.GetObjectStateEntries(EntityState.Added | EntityState.Deleted | EntityState.Modified | EntityState.Unchanged))

            if (entry.Entity != null)

                Detach(entry.Entity);

        base.Dispose(disposing);

    }

}

sinon, par Reflection, on peut modifier une propriété privée (je sais c'est mal). Cependant, je m'étais demandé pourquoi cela. Jeff Derstadt nous explique pourquoi et qu'est-ce qui est prévu pour la suite.

Pourquoi : pour des raisons de perfs d'abord mais aussi parce que quand on détache un objet d'un context, on perd toutes ses relations, d'où l'intérêt de ne pas le faire.

Ce qui est prévu : pouvoir réattacher un objet quand son contexte a été disposé

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Publié dimanche 9 mars 2008 14:27 par Matthieu MEZIL

Classé sous : , ,

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- [Perso] Découvertes estivales : Linux (Part I) par Le blog de FremyCompany le il y a 2 heures et 46 minutes

- [Refactoring] ReSharper pour Visual Studio 2010 (Preview) par Thomas Jaskula le il y a 17 heures et 22 minutes

- [Refactoring] Analyser vos exceptions avec ReSharper Exceptional par Thomas Jaskula le il y a 18 heures et 36 minutes

- SharePoint 2007 : patterns & practices SharePoint Guidance par Philippe Sentenac [MVP SharePoint] le 07-03-2009, 09:56

- [Visual Studio 2010] Les tests cases c’est bien, mais je vais devoir tout réécrire ? par Etienne Margraff le 07-03-2009, 09:00

- MVP[Gribouillon].AddYear par The Grib's Lair [Sébastien PICAMELOT - MVP SharePoint] le 07-03-2009, 08:45

- Clinique INSIA - Projet de fin d’Etudes (Silverlight 3 MVVM et OutOfBrowser, WCF, TFS) - Part 1 par David REI le 07-02-2009, 23:38

- C’est la crise ? Bah pourquoi cramer du budget pub alors ? par Nix's Blog le 07-02-2009, 15:31

- Soyons MVP ! par TheSaib .NET blog le 07-02-2009, 12:15

- SharePoint : Gestion des Erreurs 6398, 7076 et 6482 par Blog Technique de Romelard Fabrice le 07-02-2009, 11:53