我正在开发一个小型Web应用程序,使用nhibnerate作为我的DAL。 我需要使用简单的ICriteria来选择我想要的课程。
这是我的代码示例:
var criteria = CurrentSession.CreateCriteria(typeof(School))
.CreateAlias("students", "s")
.Add(Restrictions.Eq("s.Name", "Charley"));
由于某些原因,此代码生成了一个没有内部联接的查询。我只选了一个表。
我该如何解决这个问题?
谢谢
答案 0 :(得分:2)
Oenning的评论可能是答案,但你还应该在CreateAlias中指定连接类型:
var criteria = CurrentSession.CreateCriteria(typeof(School))
.CreateAlias("students", "s", JoinType.InnerJoin)
.Add(Restrictions.Eq("s.Name", "Charley"));