【发布时间】:2014-01-09 14:21:17
【问题描述】:
在实体框架中,我们可以使用“include”来实现预先加载。我已经为 NHibernate linq 中的 eagar 加载编写了以下查询。
IList empl = Session.CreateCriteria(typeof(Employee))
.Add(Expression.Like("Name", "Pete%"))
.SetFetchMode("Name", FetchMode.Eager)
.SetFetchMode("Desigantion", FetchMode.Eager)
.List();
谁能给我一个更好的例子来说明 NHibernate Linq 中的 eagar 和延迟加载。我在流利的 Nhibernate 中有以下映射:
Table("DEMO_Employee");
Id(t => t.Id).Column("Id").GeneratedBy.Identity();
Map(t => t.Name, "Name");
Map(t => t.Designation, "Designation");
Map(t => t.Gender, "Gender");
Map(t => t.Age, "Age");
Map(t => t.Enabled, "Enabled");
Map(t => t.CreatedById).Column("CreatedBy");
Map(t => t.LastModifiedById).Column("LastModifiedBy").Nullable();
Map(t => t.IsDeleted).Column("IsDeleted");
Map(t => t.CreatedDate).Column("CreatedDate");
Map(t => t.LastModifiedDate).Column("LastModifiedDate").Nullable();
References(x => x.Department).ForeignKey("DeptId");
Table("DEMO_Department");
Id(t => t.DeptId).Column("DeptId").GeneratedBy.Identity();
Map(t => t.DeptName, "DeptName");
Map(t => t.Enabled, "IsEnable");
【问题讨论】:
标签: asp.net-mvc linq nhibernate fluent-nhibernate