J'utilise Entity Framework 4.1 (premier code) comme cadre de mise en correspondance O/R:Entity Framework Loading
J'ai trois entités: Post, PostForUser et l'utilisateur, alors qu'un PostForUser est associé à un seul poste et un utilisateur .
Maintenant, je veux aller chercher tous les messages pour un utilisateur et une charge en plus l'utilisateur qui a créé le poste:
var posts = _dbContext.PostsForUser
.Include("Post.ByUser")
.Where(x => x.WasRead == false && x.User.Id == CurrentUser.Id)
.Select(x => x.Post)
.ToArray();
Utilisation de la requête ci-dessus, la propriété « ByUser » est jamais chargé. Je n'utilise pas du tout de chargement paresseux, mais je n'arrive toujours pas à faire fonctionner le chargement correctement.
Aucune configuration de mappage personnalisée ou convention spéciale n'est enregistrée. Juste les définitions des entités suivantes:
public class Post
{
public int Id { get; set; }
public string Content { get; set; }
public DateTime Date { get; set; }
public User ByUser { get; set; }
}
public class PostForUser
{
public int Id { get; set; }
public User User { get; set; }
public Post Post { get; set; }
public bool WasRead { get; set; }
}
Merci, qui a résolu mon problème. Savez-vous quelles propriétés de navigation sont chargées automatiquement sans avoir besoin d'utiliser la clause "Include"? – ollifant