2016-10-13 1 views
0

Lets I 3 Tabellen sagen, wie Städte, Touren und tourdetailsman zu viele Beziehungen zwischen 3 Tabellen mit Entity Code zuerst

Ich möchte Daten über Städte speichern, die in Tour und die Dauer des Besuches für jede Stadt enthalten sind . Jede Tour könnte mehrere Städte haben.

hier ist mein Code

public class TourDetails 
{ 
    [Required, Key] 
    public int ID { get; set; } 
    [Required] 
    public int Duration { get; set; } 

    [Required] 
    public virtual City City { get; set; } 
    [Required] 
    public virtual Tour TourID { get; set; } 
} 

public class Tour 
{ 
    [Required, Key, MaxLength(5), MinLength(5)] 
    public string ID { get; set; } 
    [Required, MaxLength(20)] 
    public string TourName { get; set; } 
    [Required] 
    public int TotalDuration { get; set; } 
    [Required] 
    public decimal Price { get; set; } 

    [Required] 
    public virtual ICollection<TourDetails> TourDetails { get; set; } 
} 

public class City 
{ 
    [Required, Key] 
    public int ID { get; set; } 
    [Required, MaxLength(20)] 
    public string CityName { get; set; } 

    [Required] 
    public virtual ICollection<TourDetails> TourDetails { get; set; } 
} 

Mein Problem ist, dass, wenn ich Code Entity Framework kompilieren überhaupt nicht zeigt mir TourDetails Tabelle in Diagramm (Tabelle Base hinzugefügt) Ich bin ziemlich neu zu Entity Framewrok und versuche nur zu lernen, so könnte es eine dumme Frage sein, aber ich hoffe, ich werde eine richtige Antwort bekommen.


Problem gelöst ist, war Problem mit Studio mein SQL Manager nicht mit dem Code, vielen Dank, der versucht für Ihre Zeit zu helfen, und sorry :)

+0

erkennen Welche Diagramm redest du da? –

+0

Datenbank-Diagramm in Sql-Manager-Studio, die Beziehungen zwischen den Tabellen – Geoman

+0

zeigt Erprobte Ihr Modell und Fremdschlüssel Beziehungen wurden erstellt. Alles sieht gut aus (außer dem Namen der Eigenschaft "Tour TourID", aber das ist irrelevant). –

Antwort

0

Sie sind ids der Entitäten fehlen (und ein von Eigenschaften Name ist falsch):

public int CityId { get; set;} 
public virtual City City { get; set; } 
public int TourId { get; set; } 
public virtual Tour Tour { get; set; } 

Entity Framework sollte nun die Beziehung

+0

danke für die Antwort. Ich habe IDs, die einfach nur ID statt Cityid genannt werden. Tour ID ist String könnte das ein Problem sein? und ich habe den Nachnamen repariert, aber das alleine hat nicht geholfen :) – Geoman

+0

Oh, Entschuldigung, hab 'den String dort nicht gesehen, mein Schlechter. In diesem [thread] (http://stackoverflow.com/questions/32983524/how-to-use-string-property-as-primary-key-in-entity-framework) lautet die Antwort: Sie müssen 'verwenden [DatabaseGenerated (DatabaseGeneratedOption.None)] 'für einen' string' Primärschlüssel. Sag, ob das hilft –

+0

Leider hat es nicht geholfen aber danke für die nützlichen Infos trotzdem – Geoman

Verwandte Themen