| 发表于:2007-05-31 16:31:54 楼主 |
最近在研究nhibernate,但是在执行setfetchmode=fetchmode.lazy时候碰到些问题。 我使用的是nhibernate1.2.0.ga,在它自带的nhibernate.examples-2.0中,将customer类的映射文件customer.hbm.xml中设置 <set name= "orders " inverse= "true " table= "cas_order " lazy= "false "> , 然后,用以下语句进行提取操作 ilist customer = session.createcriteria(typeof(customer)) .setfetchmode( "orders ", fetchmode.lazy) .list(); 但是setfetchmode没有起作用,执行这条语句时还是加载了相应的order. 然后,我看了一下nhibernate的源码, public enum fetchmode { default = 0, select = 1, join = 2, lazy = select, eager = join } 居然lazy = select,那么如果在映射中定义了lazy=false,岂不是永远都不能够lazy loading了。 请高人指点! |
|
|
|
|