У меня есть эти 2 объекта:QueryOver ребенка от родителей
public class Parent
{
public virtual int Poid { get; set; }
public virtual IEnumerable<Child> Child { get; set; }
}
public class Child
{
public virtual int Poid { get; set; }
public virtual string Name {get; set;}
}
Я хочу использовать NHibernet QueryOver API, чтобы получить ребенка на основе Parent Id и ребенка Id, Это значит, что-то вроде дать мне ребенка с Id = x, принадлежащий родительскому элементу с Id = y.
Я пытался что-то вроде этого:
return Session.QueryOver<Parent>().Where(p => p.Poid == y)
.JoinQueryOver(p => p.WishesLists)
.Where(c => c.Poid == x)
.SingleOrDefault<Child>();
Но я получаю исключение, которое не представляется возможным преобразовать объект типа потомка к родителю.
Какова правильная форма QueryOver, начиная с родительской сущности, но возвращая дочернее сущность?
ли 'Child' имеет отображенную ссылку на родитель? То есть, доступно 'Child.Parent'? –
Спасибо за ответ, но не у него нет, ребенок не должен знать о родителе. Где-то я решил с ответом @ jamie-ide. – Diego