To do it with your solution no but yes there is a way to early load a collection case by case: http://nhforge.org/doc/nh/en/index.html#querycriteria-dynamicfetching
<http://nhforge.org/doc/nh/en/index.html#querycriteria-dynamicfetching>With HQL is : "join fetch", "left join fetch" and so on 2010/1/15 sravan <[email protected]> > Can we do lazy loading case by case basis? > > I have a Allocation and Model class > > public class Allocation : EntityBase > { > public virtual int Id { get; set; } > > public virtual string AllocationName { get; set; } > > public virtual string AllocationDescription { get; set; } > > public virtual IList<Model> Models { get; set; } > > public virtual string Status { get; set; } > > public virtual DateTime LastUpdated { get; set; } > } > > > public class Model : EntityBase > { > public virtual int Id { get; set; } > > public virtual string ModelName { get; set; } > > public virtual string ModelDescription { get; set; } > } > > > Allocation class contains IList of Models. > > I have configured the Models to be lazy loaded. > > Here is the mapping file > > > <?xml version="1.0" encoding="utf-8" ?> > <!-- NHibernate mapping file between Allocation table and Allocation > class--> > <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"> > <class table="Allocation" > name="Com.Honda.Auto.NGM.Entities.Allocation,Com.Honda.Auto.NGM.Entities" > > > <id name="Id" column="Id"> > <generator class="identity"></generator> > </id> > <timestamp column="LastUpdateTimestamp" name="LastUpdateTimestamp" > unsaved-value="null" generated="never"></timestamp> > <property column="LastUpdateUserId" name="LastUpdateUserId"></ > property> > <property column="CreateTimestamp" name="CreateTimestamp"></ > property> > <property column="CreateUserId" name="CreateUserId"></property> > <property name="AllocationName" column="Name"></property> > <property name="AllocationDescription" column="Description" ></ > property> > <!--<property name="Status" column="Status" ></property>--> > > <bag name="Models" table="ModelAllocation" lazy="true" > fetch="join"> > <key column="AllocationId"></key> > <many-to-many > class="Com.Honda.Auto.NGM.Entities.Model,Com.Honda.Auto.NGM.Entities" > column="ModelId" fetch="join" ></many-to-many> > </bag> > </class> > > </hibernate-mapping> > > Can i change the lazy loading behavior case by case basis without > rebuilding the session factory. > > The behavior i am expecting is in some cases when i get an Allocation > it should give me Models as well. > > but in other case it should not load models. > > Is there any way to achieve this? > > Thanks, > Sravan > > > > > > -- > 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]<nhusers%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/nhusers?hl=en. > > > > -- Fabio Maulo--
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.
