2012-04-23 95 views
1

我有以下情形,其中'父'包含具有一对多关系的'子'列表。从流畅的nhibernate的子对象中获取父对象

public class Parent 
{ 
public virtual int Id { get; protected set; } 
public virtual String Title { get; set; } 
public virtual IList<Child> Child { get; set; } 
} 

public class Child 
{ 
public virtual int Id { get; protected set; } 
public virtual String Code{ get; set; } 
} 

在某些时候,我有一个'Child'类的对象,我想从中获取其各自的父对象。任何建议如何做到这一点?

回答

0

你可以这样做:

var childId = "..."; 

Child childAlias = null; 
session.QueryOver<Parent> 
    .JoinAlias(parent => parent.Children,() => childAlias) 
    .Where(() => childAlias.Id == childId) 
    .TransformUsing(Transformers.DistinctRootEntity) 
    .SingleOrDefault(); 
+0

感谢您的帮助。 – 2012-04-24 06:09:24

相关问题