Поиск ребенка по совокупным корням

Шаблон репозитория предполагает, что вы можете тянуть только совокупные корни. Но как бы вы извлекли одного ребенка, используя только его уникальную идентификацию (Child.ID), если вы не знаете, что это родитель (root)?

class Parent
{
    public int ID { get; set; }
    IEnumerable<Child> Children { get; private set; }
}

class Child
{
    public int ID { get; private set; }
    public virtual Parent Parent { get; private set; } // Navigational model
}

Мое приложение не имеет состояния (веб), для простоты запрос содержит только идентификатор ребенка.

Я думаю о трех подходах:

Позвоните всем родителям, затем вежливо спросите их, кому принадлежит этот ребенок.Есть специальная подпрограмма в ParentRepository, называемая getChildByID, которая в некотором роде завершает работу с абстракцией репозитория.Измените запрос, включив в него родительский элемент, но он кажется ненужным, поскольку у вас уже есть уникальный идентификатор

Ответы на вопрос(3)

Ваш ответ на вопрос