2016-02-11 1 views
1

Je développe l'application web avec Entity Framework 6.Entity Framework 6 relation un à plusieurs

J'ai un modèle de dossier qui contient une liste d'objets Lettre.

Mon objet lettre:

public class Letter 
{ 
    [Key] 
    public int Id 

    [ForeignKey("Folder")] 
    public int FolderId {get; set;} 

    public virtual Folder Folder {get; set;} 
} 

J'ai 2 dbsets dans mon DbContext:

DbSet<Folder> 
    DbSet<Letter> 

Ma question est ce qui se passe quand j'ajoute une nouvelle lettre? Si plus tard je récupère le dossier, j'ai ajouté les lettres, ces lettres seront-elles contenues dans la liste des lettres du dossier?

+3

Oui. Pourquoi ne pas le voir par vous-même en exécutant le code? – lbrahim

+1

Veuillez faire quelques recherches sur les concepts de base avant de poser des questions redondantes ici. Voici un bon début: http://www.entityframeworktutorial.net/code-first/configure-one-to-many-relationship-in-code-first.aspx –

Répondre

0

ce qui devrait ressembler à votre modèle

public class Folder 
{ 
public int Id{get;set;} 
public virtual ICollection<Letter> Letters{get;set;} 
} 

public class Letter 
{ 
public int Id{get;set;} 
public int FolderId{get;set;} 
public virtual Folder Folder{get;set;} 

} 

le meilleur.

0

Oui, ils seront contenus dans la liste de Folder, vous devez modifier votre propriété virtual être un collection de Folder. Ensuite, si vous essayez d'ajouter ou de récupérer des dossiers à une lettre spécifique, sélectionnez la lettre par ID et vos dossiers devraient être là. Pour plus d'informations vous pouvez consulter here