Tôi đang cố gắng sử dụng tiêu chí Api trên nhiều bảng với tải mong muốn.Tìm nạp bằng API tiêu chuẩn nhibernate
Đối tượng rút gọn của tôi trông như thế này:
class Limit
{
Risk {get; set;}
}
class Risk
{
List<Company> Companies { get;set;}
}
class Company
{
List<Address> OldAdresses {get;set;}
}
class Address
{
string Street { get;set;}
}
gọi Tiêu chuẩn của tôi trông như thế này:
var CriterionGruppe = Expression.Eq("Account.Id", someGuid);
var temp = _transaktion.Session.CreateCriteria(typeof(Limit))
.SetFetchMode("Risk", FetchMode.Eager)
.SetFetchMode("Risk.Companies", FetchMode.Eager)
.Add(CriterionGruppe)
.SetResultTransformer(new DistinctRootEntityResultTransformer())
.List<Limit>();
Các địa chỉ vẫn được nạp với nhiều Selects. Làm thế nào tôi có thể bao gồm các địa chỉ cũ của một Công ty trong cuộc gọi tiêu chí của tôi.
Tôi đã đọc một mục blog trong blog của ayende và một số câu hỏi khác ở đây tại stackoverflow. Nhưng vẫn không có may mắn.
Tôi hy vọng ai đó có thể chỉ cho tôi đúng hướng.
Cảm ơn trước peter
When must we use eager loading in NHibernate? What is it's usage?
NHibernate Eager Fetching Over Multiple Levels
Cảm ơn bạn. Đó là những gợi ý tôi đã hy vọng. Tôi biết rằng nó không hiệu quả như cách tôi truy vấn. – user631833