I am lazy loading the collections, and also because there are so many
fields within the person table, I am writing a projection function to
retrieve only certain properties. It works with properties, just not
collections of other entities. I would be fine if they were loaded in
as proxies and i could get them later, but right now it just loads in
null.
public IList<Person> ListTop40()
{
var list = _session.CreateCriteria(typeof(Person))
.SetProjection(Projections.ProjectionList()
.Add(Projections.Property("FirstName"))
.Add(Projections.Property("LastName"))
.Add(Projections.Property("Jersey"))
.Add(Projections.Property("FortyYard"))
.Add(Projections.Property("BenchReps"))
.Add(Projections.Property("VertJump"))
.Add(Projections.Property("ProShuttle"))
.Add(Projections.Property("LongJump"))
.Add(Projections.Property
("PersonSchoolCollection"))
)
.List<IList>()
.Select(l => new Person() { FirstName = (string)l
[0], LastName = (string)l[1], Jersey = (Decimal)l[2], FortyYard =
(Decimal)l[3], BenchReps = (Decimal)l[4], VertJump = (Decimal)l[5],
ProShuttle = (Decimal)l[6], LongJump = (Decimal)l[7],
PersonSchoolCollection = (IList<Person_School>)l[8]});
IList<Person> s = list.ToList();
return s;
}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"nhusers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nhusers?hl=en
-~----------~----~----~----~------~----~------~--~---