NHiA is based on NH1.2 (very old version at this point) and is strange that
I don't know that feature.I'll review the H3.3.0 code to check if that is a
real feature supported by Hibernate.

2009/1/6 j gwood <[email protected]>

>
> Thank you for the explanation on version versus optimistic-lock.  The
> following text from the NHibernate In Action book led me to believe
> that you could disable the version increment using the optimistic-lock
> attribute (page 129 of Kuate_NHibernate_MEAP_0804.pdf):
>
> "It is possible to disable the increment of the version when a
> specific property is dirty. To do so, you must add  optimistic-
> lock="false" to this property's mapping. This  feature is available
> for properties, components and collections (the owning entity's
> version is not incremented). "
>
> The book does not mention the difference between session.save() and
> flushing the session with transaction.commit().
>
> My company requires the functionality to save an object without having
> the version incremented when certain properties are modified.
>
> Jean
>
> On Jan 6, 9:53 am, "Fabio Maulo" <[email protected]> wrote:
> > The version is the version. The optimistic-lock strategy is
> > the optimistic-lock strategy.If you are working with Version, each
> operation
> > with a persistence instance mean change its state that mean change its
> > version.
> >
> > The optimistic-lock have place when an instance is flushed to DB. If you
> > don't set the FlushMode explicit its value is FlushMode.Auto that mean,
> at
> > least, that you are flushing the nh-session (that is the UoW) at
> > transaction-commit.
> >
> > 2009/1/6 j gwood <[email protected]>
> >
> >
> >
> >
> >
> >
> >
> > > Is there any way to have the Version property NOT incremented on
> > > Session.SaveOrUpdate() or Session.Update() when using optimistic-
> > > lock="false"?  I am using setting optimisitic-lock to false in my
> > > mapping file; however, NHibernate seems to be ignoring the optimistic-
> > > lock attribute setting.  Is there some other property that needs to be
> > > set on my component or list?
> >
> > > We are encapsulating NHibernate in our Persistence layer and using
> > > Spring.NET to help manage transactions, so we are not exposing
> > > ISession.  The optimistic-lock attribute works when you don't call
> > > Session.SaveOrUpdate and when you simply commit a transaction:
> >
> > >        s = OpenSession();
> > >        t = s.BeginTransaction();
> > >        gavin = (Person) s.CreateCriteria(typeof(Person)).UniqueResult
> > > ();
> > >        new Task("Document", gavin);
> > >        t.Commit();
> > >        s.Close();
> >
> > > My current mapping file as the following attributes set:
> >
> > >  <class name="Parent" table="Parent" schema="Simple" proxy="IParent"
> > > optimistic-lock="version">
> > >   <id name="Id" column="Id" type="Guid">
> > >     <generator class="assigned"/>
> > >   </id>
> > >   <version name="Version" column="`Version`" type="Int32" unsaved-
> > > value="0"/>
> > >   <property name="Name" column="`Name`" type="string" length="50"
> > > optimistic-lock="false" />
> > >   <list name="ChildrenInjector" inverse="true" generic="true"
> > > cascade="all-delete-orphan" batch-size="10" optimistic-lock="false">
> > >     <key column="ParentId"/>
> > >     <index column="SiblingIndex" type="Int32"/>
> > >     <one-to-many class="Child"/>
> > >   </list>
> > >  </class>
> >
> > > Any suggestions are greatly appreciated,
> >
> > > Jean
> >
> > --
> > Fabio Maulo- Hide quoted text -
> >
> > - Show quoted text -
> >
>


-- 
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to