2012-03-08 81 views
0

我有一個自定義屬性(在網格綁定)這樣的:有沒有辦法用NHibernate創建一個懶惰的自定義屬性?

public class MyClass 
{ 
     public virtual IList<clsClass2> MyList{ get; set; } //Lazy loaded 
     public virtual string CustomProperty //To use on Grid Binding 
     { 
      get 
      { 
      if (!MyList.IsNullOrEmpty()) 
       return MyList.Select(__comp => __comp.Name).ToList().ToString(", "); 
       return string.Empty; 
      } 
     } 
} 

其工作正常......但是這樣每次我打開一個MyClass的對象,它的負荷,因爲CustomProperty的每MYLIST元素。 ..

有沒有更好的方式來做到這一點?

感謝

+2

lazyloaded財產蒙山公式 – Firo 2012-03-09 12:22:13

+0

你能給一個小樣本的數據庫語法? – Paul 2012-03-09 13:15:54

回答

1
public virtual string CustomProperty //To use on Grid Binding 
{ 
    get; private set; 
} 

// using FLuentMapping 
Map(x => x.CustomProperty).Formula("(SELECT ... FROM Class2Table c2 WHERE c2.MyClass_id = Id)"); 

和交流...與聚集串see here

+0

使用XML PATH嘗試過,但得到一個錯誤......我發現:https://nhibernate.jira.com/browse/NH-2132 ......所以我覺得我不能NHibernate的公式使用XML PATH ....有沒有其他方法? – Paul 2012-03-12 13:38:09

相關問題