C# Nhibernate 3.0:未来的问题<&燃气轮机;和对联接表的限制
我想不出nHibernate有什么问题。 我的领域很简单。由于我的大部分数据都显示在分页网格(jqGrid)中,因此我需要使用Future来获取总行数。 如果我在这里运行这段代码,它将正常工作:C# Nhibernate 3.0:未来的问题<&燃气轮机;和对联接表的限制,c#,nhibernate,C#,Nhibernate,我想不出nHibernate有什么问题。 我的领域很简单。由于我的大部分数据都显示在分页网格(jqGrid)中,因此我需要使用Future来获取总行数。 如果我在这里运行这段代码,它将正常工作: ICriteria FiltersCriteriaCount = session.CreateCriteria<Domain.Reminder>(); ICriteria FiltersCriteria = session.CreateCriteria<Domain.Reminder&
ICriteria FiltersCriteriaCount = session.CreateCriteria<Domain.Reminder>();
ICriteria FiltersCriteria = session.CreateCriteria<Domain.Reminder>();
var TotalRecords = FiltersCriteriaCount
.SetProjection(Projections.RowCount())
.FutureValue<Int32>();
var sResult = FiltersCriteria
.CreateAlias("Company", "Company")
.CreateAlias("PlanType", "PlanType")
.CreateAlias("OperationsManager", "OperationsManager")
.CreateAlias("Schedules", "Schedules", NHibernate.SqlCommand.JoinType.LeftOuterJoin)
.SetFirstResult(0)
.SetMaxResults(100)
.Future<Domain.Reminder>()
.ToList<Domain.Reminder>();
如果我摆脱了Future并像这样转换我的代码,一切都会很好:
ICriteria FiltersCriteria = session.CreateCriteria<Domain.Reminder>();
FiltersCriteria.Add(Restrictions.Eq("Schedules.Notes", ""));
var sResult = FiltersCriteria
.CreateAlias("Company", "Company")
.CreateAlias("PlanType", "PlanType")
.CreateAlias("OperationsManager", "OperationsManager")
.CreateAlias("Schedules", "Schedules", NHibernate.SqlCommand.JoinType.LeftOuterJoin)
.SetFirstResult(0)
.SetMaxResults(100)
.List<Domain.Reminder>();
ICriteria FiltersCriteria=session.CreateCriteria();
FiltersCriteria.Add(Restrictions.Eq(“Schedules.Notes”和“));
var sResult=FiltersCriteria
.CreateAlias(“公司”、“公司”)
.CreateAlias(“PlanType”、“PlanType”)
.CreateAlias(“OperationsManager”、“OperationsManager”)
.CreateAlias(“计划”,“计划”,NHibernate.SqlCommand.JoinType.LeftOuterJoin)
.SetFirstResult(0)
.SetMaxResults(100)
.List();
我找不到原因。
非常感谢您的帮助。我想说,试试这个:
var TotalRecords = FiltersCriteriaCount
.CreateAlias("Schedules", "Schedules", NHibernate.SqlCommand.JoinType.LeftOuterJoin)
.SetProjection(Projections.RowCount())
.FutureValue<Int32>();
var TotalRecords=FiltersCriteriaCount
.CreateAlias(“计划”,“计划”,NHibernate.SqlCommand.JoinType.LeftOuterJoin)
.SetProjection(Projections.RowCount())
.未来价值();
谢谢Florian。我应该考虑一下那是个愚蠢的错误。伟大的
var TotalRecords = FiltersCriteriaCount
.CreateAlias("Schedules", "Schedules", NHibernate.SqlCommand.JoinType.LeftOuterJoin)
.SetProjection(Projections.RowCount())
.FutureValue<Int32>();