I have seen a post about someone trying to implement audit logging with nh interceptor: http://elegantcode.com/2008/05/15/implementing-nhibernate-interceptors/ Don't know if they succeeded, but, IMHO, such functionality should be offered by NH out of the box, without forcing developers to implement everything from scratch every time.
R On 12 Sty, 14:50, Henning <[email protected]> wrote: > Hi > > After a few looong days and a lot of searching I thought I'd try to > get some help here. > > On a few of our entities we need to perform an audit and log the dirty/ > changed fields in a separate table. > I've seen that some people here have asked the same question, but no > answer seem to work. > > What I need to do is to add a new row to the table with the following > info: > entity id, > event type > property name > old value > new value > user > > Please note that this is not the regular audit info that Ayende > blogged about, where you insert ModifiedBy, ModifiedDate etc. > > Almost everything works perfectly. I'm able to retrieve the dirty > values, create the audit entity, but the problem is in the saving of > those entities. > I'm using IPreUpdateEventListener and have also tried > IPostUpdateEventListener, but to no avail. Session does not save the > new entities at all, and throws no exception. > The code I'm trying is as follows: > > public bool OnPreUpdate(PreUpdateEvent updateEvent ) > { > var entity = updateEvent.Entity as ApprovedClaim; > if (entity == null) > return false; > > var session = updateEvent.Session; > var history = new EntityHistory > (entity.Id,EventType.Update, "propname", "2", "3", null); > > session.Save(history); > > return false; > > } > > If I can't get it to work I seriously have to consider using DB > triggers, but I'd rather use NH's capabilities. > > Anybody have a clue on what's going on here?
-- 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.
