Получить родительский объект с Entity Framework, используя ленивую загрузку - PullRequest
0 голосов
/ 16 марта 2020

Мне нужно решение для извлечения родительского объекта из дочернего объекта с помощью отложенной загрузки EF. У меня есть 10 не связанных классов, которые могут использовать один тип потомка и поэтому не знают, как настроить запрос LINQ для него. Я посмотрел здесь , но это заставляет меня думать, что я должен знать, что ребенок на самом деле привязан к Parent1. По ссылке я знаю, что в блоге есть пост, но в посте не будет блога. У меня нет такого типа solid отношений.

Вот пример моей настройки класса:

public class Parent1 
{
    public int Parent1Id { get; set; }
    ... other properties ...
    public virtual Child Child { get; set; }
}

public class Parent2 
{
    public int Parent2Id { get; set; }
    ... other properties ...
    public virtual Child Child { get; set; }
}

public class Parent3
{
    public int Parent3Id { get; set; }
    ... other properties ...
    public virtual Child Child { get; set; }
}

public class Child 
{
    public int ChildId { get; set; }
    ... other properties ...
}

Дочерний объект создан, добавлен в Parent2 и сохранен в базе данных через DbContext.

После этого я извлекаю дочерний объект и хочу определить, с каким родительским классом он связан.

EDIT

У меня есть вызов generi c, подобный этому

public T GetById<T>(int id) where T : Base, new()
    {
        T entity = _Context.Set<T>().Find(id);
        return entity;
    }

Затем я звоню вот так

Child childObj = DB.GetByID<Child>(id);
...