Метод Include() отлично работает для списков объектов. Но что, если мне нужно идти на два уровня в глубину? Например, приведенный ниже метод вернет ApplicationServers с включенными свойствами, показанными здесь. Однако ApplicationWithOverrideGroup - это еще один контейнер, содержащий другие сложные объекты. Могу ли я использовать Include() для этого свойства? Или как я могу получить это свойство для полной загрузки?
Как сейчас, этот метод:
public IEnumerable<ApplicationServer> GetAll()
{
return this.Database.ApplicationServers
.Include(x => x.ApplicationsWithOverrideGroup)
.Include(x => x.ApplicationWithGroupToForceInstallList)
.Include(x => x.CustomVariableGroups)
.ToList();
}
Будет заполнено только свойство Enabled (ниже), а не свойства Application или CustomVariableGroup (ниже). Как это сделать?
public class ApplicationWithOverrideVariableGroup : EntityBase
{
public bool Enabled { get; set; }
public Application Application { get; set; }
public CustomVariableGroup CustomVariableGroup { get; set; }
}