我正在使用QueryOverApi,试图在where子句中使用SQL Expression。我基本上有:
var query = CurrentSession.QueryOver<Appointment>(() => appt)
.JoinAlias(() => appt.Work, () => work)
.JoinAlias(()=>appt.Contact,()=>ct)
.JoinAlias (()=>ct.Tags,()=>tag)
.Where(Expression.Sql("(ct2_.OrganizationId in (SELECT...."))
这有效,但我不得不硬编码我的别名ct2_。我怎么能弄清楚nHibernate会将我的联系表别名为ct2。