Class A
{
Guid ID{get;}
ISet<B> ClassBs {get;}
}
repository
public IList<B> GetAsBs(A a)
{
ICriteria ACriteria = Session.CreateCriteria(typeof(A));
ICriteria BCriteria = ACriteria.CreateCriteria("ClassBs");
A.Add(Restrictions.Eq("ID", a.ID));
return BCriteria.List<B>();
}
我可以在HQL np中完成此操作,但希望使用标准 我收到一个错误,它试图返回A而不是B
任何帮助都会很棒
答案 0 :(得分:0)
我刚为感兴趣的人
去了HQL public IList<B> GetAsBs(A aClass)
{
string hql = @"
SELECT B
FROM A a
JOIN a.ClassBs b
WHERE A.ID = :ID
";
IQuery query = Session.CreateQuery(hql);
query.SetParameter("ID", aClass.ID);
return query.List<B>();
}