NHibernate查询帮助
我有两张桌子,计划和票。我要TravelPlan中的所有记录,但不要Ticket中的NHibernate查询帮助,nhibernate,nhibernate-criteria,nhibernate-projections,Nhibernate,Nhibernate Criteria,Nhibernate Projections,我有两张桌子,计划和票。我要TravelPlan中的所有记录,但不要Ticket中的 Template.Criteria.CreateCriteria("Plan") .Add(Subqueries.PropertyNotIn("UserID", DetachedCriteria.For(typeof(Ticket)) .SetProjectio
Template.Criteria.CreateCriteria("Plan")
.Add(Subqueries.PropertyNotIn("UserID",
DetachedCriteria.For(typeof(Ticket))
.SetProjection(Projections.Property("UID"))));
上面的查询没有返回任何记录。我猜不出SearchTemplate做了什么,但是您将投影应用到外部条件,而不是分离的条件 此外,“根”标准应适用于TravelPlan,而不是Ticket 换言之:
criteria = DetachedCriteria.For<TravelPlan>()
.Add(Subqueries.PropertyNotIn(
"UserId",
DetachedCriteria.For<Ticket>()
.SetProjection(Projections.Property("UID"))))
criteria=DetachedCriteria.For()
.Add(subquerys.PropertyNotIn(
“用户ID”,
DetachedCriteria.For()
.SetProjection(Projections.Property(“UID”))
这假设TravelPlan有一个与Ticket中的UID
属性相匹配的UserID
属性
Template.Criteria.CreateCriteria("Plan")
.Add(Subqueries.PropertyNotIn("UserID",
DetachedCriteria.For(typeof(Ticket))
.SetProjection(Projections.Property("UID"))));