2017-07-12 2 views
1

Voici les classes d'échantillonsEF Code de l'enfant du premier accès de l'enfant à mettre ForeignKey

public class Parent { 
    public int ParentId {get; set;} 
    public string UserName {get; set;} 
    public Child Child{get; set;} 
} 

public class Child { 
    public Child1[] ListChild1 {get; set;} 
} 

public class Child1 { 
    public int Child1Id {get; set;} 
    public int ParentId {get; set;} 
    public int Child1Name {get;set;} 
} 

nécessité de créer la table en utilisant l'approche Entity Framework code-Première. ParentId est PK dans Parent et FK dans Child1. Pas besoin de créer la table pour la classe enfant. La table Child1 a Child1Id comme PK et ParentId comme FK. Besoin d'aide pour créer cette relation dans la base de données en utilisant l'API fluide. structure requise Databse Parent ParentId (PK) UserName

Enfant1 Child1Id (PK) ParentId (FK) ChildName

Répondre

0

J'ai utilisé quelque chose de similaire dans le passé:

public class Category 
{ 
    [Key] 
    public int ID { get; set; } 

    [Required] 
    public string Name { get; set; } 

    public int? ParentID { get; set; } 

    public virtual Category Parent { get; set; } 

    public virtual ICollection<Category> Children { get; set; } 
} 

Cela devrait fonctionner pour un parent infini, relation d'enfants dans la même table.

+0

Cela ressemble à un auto-référencement. Est-ce une structure de classe pour la classe Child1 dans l'exemple ci-dessus? – Deepa

+0

Mon approche est, au lieu de créer deux tables, de n'en créer qu'une puisque (je suppose) le parent et les enfants sont du même type. Jetez un oeil à ce https://stackoverflow.com/a/31623630/2108385 –