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.


Reply via email to