2009-07-08 10 views
2

Je suis en train de développer une application WPF qui parle à une base de données via Entity Framework, et j'ai d'énormes problèmes à essayer de garder l'application sensible. Le DataContext n'est pas thread-safe, donc vous ne pouvez pas accéder aux données à partir des threads d'arrière-plan. Vous ne pouvez pas passer d'objets entre DataContexts en raison du suivi de l'objet (j'ai essayé pendant 3 semaines ... c'est toujours sorte de fonctionne mais jamais dans tous les cas).Programmation asynchrone avec Entity Framework

Tout ce que je veux faire est de garder mon application sensible pendant l'accès aux données. Quels modèles avez-vous utilisé avec Entity Framework pour y parvenir?

Merci,
Roy

+0

[Dois-je utiliser Entity Framework 4.0?] (Http://izlooite.blogspot.com/2011/04/should-i-ever-use-entity-framework-40.html) –

Répondre

0

L'EF ne supporte pas encore le chargement paresseux (ou du moins pas bien), de sorte que pourrait faire partie de votre problème de performance. Les requêtes en couches (requêtes au-dessus des requêtes) en souffriront.

Il semble que vous essayez de faire des choses assez complexes avec cela. Essayez de penser davantage en termes de transactions, à savoir Select, Update, Commit; Nouveau, Insérer, Valider et Sélectionnez, Supprimer, Valider.

Dans un référentiel ou un thread donné, travaillez toujours avec un seul DataContext. Passer des objets dans des contextes de données est, comme vous l'avez découvert, difficile. Mais cela devrait être un jeu d'enfant dans le même contexte de données.