2010-10-01 12 views
0

J'ai une application WPF consommant des données à l'aide d'Entity Framework 4 et d'entités à suivi automatique. Dans lequel j'ai une fenêtre avec 2 contrôles, un qui montre la partie "Détails" d'un objet en utilisant un ContentControl et des modèles d'un dictionnaire de ressources fusionnées. Un autre avec un ListBox de Groupes auquel appartient l'objet en question et un ComboBox de groupes disponibles il pourrait appartenir à un bouton câblé via une commande au contrôle pour ajouter/supprimer des éléments de la collection de Groupes liés basée sur le SelectedItem du ComboBox . Tout ceci est lié par DependencyPropertys.Problèmes liés à la propriété de navigation de l'entité à suivi automatique WPF

Dans ma fenêtre j'ai DP pour l'objet, EditedItem nous éditons et une propriété en lecture seule avec une liste de groupe des groupes auxquels il pourrait appartenir et lier cela à mes contrôles via XAML.

SO ....

Si je crée une nouvelle instance de l'une de mes entités, définissez ses propriétés comme ceci: (Vraiment c'est le code exact)

 Employee employee = Context.CreateObject<Employee>(); 
     employee.Name = "Joe Nobody's Brother Steve"; 
     employee.Active = true; 
     employee.Username = "snobody"; 

     Group group = Context.CreateObject<Group>(); 
     group.Name = "Losers"; 
     group.DisplayName = "Spirit Squad"; 

     employee.Groups.Add(group); 

et le définir comme EditedItem de ma fenêtre cela fonctionne IMPATITIVEMENT!

Si je récupère cependant exactement cette même entité de ma base de données, la liste de groupes est vide. Des idées?

Répondre

0

Il se trouve que je l'avais fait une erreur autre où: je devais appeler:

ObjectContext.LoadProperty(entity, navigationProperty); 

sur mes propriétés de navigation pour eux d'obtenir peuplées. Je pense que cela a quelque chose à voir avec le fait que mes objets sont tous dérivés d'un objet de base et le fait que je les sélectionne en utilisant OfType sur l'ObjectSet de l'objet principal. Ou ce pourrait être un comportement mais je pense que je l'aurais rencontré avant maintenant.

Mais bon je vais travailler, et c'est assez facile à intégrer dans mes méthodes et propriétés de sélection.

Craie celui-ci jusqu'à l'ignorance de EF4.