Я использую первый код EF5, и у меня есть объект, у которого есть коллекция, определенная как virtual
(lazy loaded). Это возвращает данные при вызове. Однако я хочу, чтобы он был загружен. Я удалил virtual
из сигнатуры свойства, но теперь он всегда возвращает данные null
. EF даже не запускает запрос, может ли кто-нибудь помочь?
Изменить: я знаю о .include()
Я бы предпочел использовать метод не виртуальной собственности для этого.
Объекты
User
([Key]
Id находится в объекте Resource, который является родителем класса person):
namespace Entities
{
[Table("Users")]
public class User : Person
{
[Required]
public ICollection<Role> Roles { get; set; }
}
}
Роль:
namespace Entities
{
public class Role
{
[Key]
public string Id { get; set; }
public virtual ICollection<User> Users { get; set; }
}
}