2014-11-05 2 views
0

Скажем, у меня есть три класса в моей модели (опуская ID и т.д.):Модель содержит нулевые значения при извлечении из базы данных?

public class Foo() { 
    public Bar Bar {get; set;} 
    public List<Baz> Bazs {get; set;} 
} 

public class Bar() { 
    public List<Foo> Foos {get; set;} 
} 

public Baz() { 

} 

Когда я создаю Foo и сохранить ее для моделирования с помощью создания точки зрения, он содержит все объекты в ней просто отлично. Но когда я извлекаю его из базы данных, он содержит нули. Таблица, в которой хранится Foo, не содержит столбцов для Bar и Baz. Однако таблицы для Bar и Baz содержат столбец Foo_Id. Это нормально, потому что Entity Framework автоматически обрабатывает эти сопоставления.

Но почему я получаю нули при извлечении из базы данных? Я сделал то же самое для другой модели, и все работает отлично!

ответ

0

Добавление virtual до того, как поля сделали трюк.

Обновлено Модель:

public class Foo() { 
    public virtual Bar Bar {get; set;} 
    public virtual List<Baz> Bazs {get; set;} 
} 

public class Bar() { 
    public virtual List<Foo> Foos {get; set;} 
} 

public Baz() { 

} 
Смежные вопросы