Модель:Загрузка внучат объект в коллекции детской, EF
public class Parent
{
public int Id { get; set; }
public ICollection<Child> Children { get; set; }
}
public class Child
{
public int Id { get; set; }
public int IdGrandChild { get; set; }
public virtual Grandchild Grandchild { get; set; }
}
public class Grandchild
{
public int Id { get; set; }
}
У меня есть существующий родительский объект с коллекцией детей. После некоторых операций я хочу, чтобы загрузить новый добавленные ребенок объекты в коллекцию Родителя из базы данных, как этого
_context.Entry(parent).Collection(f => f.Children).Load();
Но когда я делаю это так, объект Внук во все добавляемом элементе коллекции является недействительным. Я также попытался включить внука таким образом, но все же объект Grandchild имеет значение NULL.
_context.Entry(parent).Collection(f => f.Children).Query().Include(c => c.Grandchild).Load();
Как правильно загрузить новые предметы в Детскую коллекцию родителей, включая объекты Grandchild?
EDIT: Я не знаю, почему этот вопрос был отмечен как дубликат? Моя проблема: у меня уже есть (загруженный/отслеживаемый) родительский объект в одном экземпляре контекста (форме), а затем в другом экземпляре контекста (формы). Я модифицировал сборку дочернего элемента объекта (добавьте или удалите дочерний элемент). Наконец, я хочу загрузить эти новые добавленные записи в родительский набор сущностей в первом экземпляре контекста, используя один из этих ранее написанных методов, но после этого загружается только что добавленный объект, но их внуки имеют значения NULL. Я не знаю, как правильно загружать эти новые дочерние объекты в существующий (отслеживаемый) родительский объект без получения нулей.
является [это] (http://stackoverflow.com/ questions/10822656/entity-framework-include-multiple-levels-of-properties), что вы ищете? – Robert
http://stackoverflow.com/questions/10822656/entity-framework-include-multiple-levels-of-properties – Moho
Как я могу использовать это на уже отслеживаемом объекте? _context.Entry (родитель). ??? –