2017-07-12 4 views
1

Unten gesetzt sind die BeispielklassenEF-Code Erster Zugang Kind Kind 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;} 
} 

Benötigen Sie die Tabelle mit Entity Framework-Code-First-Ansatz zu schaffen. ParentId ist PK in Parent und FK in Child1. Keine Notwendigkeit, Tabelle für Child-Klasse zu erstellen. Die Child1-Tabelle hat Child1Id als PK und ParentId als FK. Brauchen Sie Hilfe, wie Sie diese Beziehung in der Datenbank mit flüssiger API erstellen können. Erforderlich Databse Struktur Eltern ParentId (PK) Benutzername

Child1 Child1Id (PK) ParentId (FK) Childname

Antwort

0

Ich habe etwas ähnliches in der Vergangenheit verwendet:

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; } 
} 

Dies sollte für eine unendliche übergeordnete, untergeordnete Beziehung in derselben Tabelle funktionieren.

+0

Das sieht wie eine Selbstreferenzierung aus. Ist das im obigen Beispiel eine Klassenstruktur für die Klasse Child1? – Deepa

+0

Mein Ansatz ist, anstatt zwei Tabellen zu erstellen, erstellen Sie nur eine, da (ich nehme an) die Eltern und die Kinder sind vom gleichen Typ. Werfen Sie einen Blick auf diese https://stackoverflow.com/a/31623630/2108385 –

Verwandte Themen