Ich habe folgende POCO Klassen definiert, die Lautsprecher zu Themen in einer many-to-many-Beziehung Karte:EF6 nicht auf Vielen bevöl Eigenschaft Viele
public class Speaker
{
public int Id { get; set; }
public string Firstname { get; set; }
public string Surname { get; set; }
public virtual ICollection<SpeakerTalkTheme> TalkThemes { get;set; }
}
public class SpeakerTalkTheme
{
[Key, Column(Order = 0)]
public int TalkThemeId { get; set; }
[Key, Column(Order = 1)]
public int SpeakerId { get; set; }
public TalkTheme TalkTheme { get; set; }
public Speaker Speaker { get; set; }
}
}
public class TalkTheme
{
public int Id { get; set; }
public string Theme { get; set; }
public int Length { get; set; }
public virtual ICollection<ThemeTag> ThemeTags { get; set; }
public virtual ICollection<SpeakerTalkTheme> TalkThemes { get;set; }
}
Allerdings, wenn ich die Datenbank abfragen und Rückkehr aus WebAPI etwa so:
public class SpeakerController : ApiController
{
public IEnumerable<Speaker> Get()
{
var db = new MyDbContext();
var model = db.Speakers.Include(x => x.TalkThemes).ToList();
return model;
}
}
ich in der Themen-Eigenschaft NULL erhalten (siehe unten):
[
{
"TalkThemes": [
{
"TalkThemeId": 1,
"SpeakerId": 1,
"TalkTheme": null
}
],
"Id": 1,
"Firstname": "Joe",
"Surname": "Bloggs"
}
]
Sollte nicht Die TalkTheme-Eigenschaft muss ausgefüllt werden? Es zeigt derzeit nur NULL und ich habe keine Ahnung, wie man das bekommt.