Entity Framework - Détacher et conserver des de l'objet graphique
J'ai juste commencé à l'aide de Entity Framework plutôt que mon NHiberante pour voir comment fonctionne les EF et jusqu'à présent je vais avoir beaucoup de problèmes, mais en particulier, est de détacher un objet et de maintien de l'enfant dans des objets.
J'ai acheté le O'Reilly Entity Framework livre qui vous dit "oui entity framework par défaut permet de ne pas garder l'objet graphique lorsque vous détacher de", mais il ne montre pas comment conserver le graphique! Merci O'Reilly c'est vraiment utile.
De toute façon si quelqu'un peut aider ce serait génial, code ci-dessous:
using (var creativeWorkshopEntities = new CreativeWorkshopEntities())
{
var q = from c in creativeWorkshopEntities.Job.Include("Files")
where c.Id == jobId
select c;
var job = q.First();
creativeWorkshopEntities.Detach(job);
return job;
}
Merci!
Dan
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser une requête NoTracking à la place. De cette façon, les objets arenever attaché, donc vous n'avez pas besoin de "détacher", qui est quand le graphe est râpé:
c'est à dire
Espère que cette aide
Alex
(Gestionnaire De Programme Équipe D'Entity Framework)
Dans EF5 la MergeOption n'est pas à la DbSet niveau de plus. Ainsi, selon cette: http://msdn.microsoft.com/en-us/data/hh949853.aspx
Si vous voulez faire un pas de suivi de la requête, vous aurez besoin de faire quelque chose comme:
Découvrez http://www.codeproject.com/KB/architecture/attachobjectgraph.aspx
C'est une formidable solution et peut vous aider - être conscient de ce que l'auteur a une version mise à jour sur son propre blog trop http://www.codetuning.net/blog/post/Entity-Framework-reattaching-entity-graphs-(3).aspx
Paul
utilisez code ci-dessous pour tenir des objets en mémoire.
[Serializable]
qui est un autre détracteur.