2012-09-04 3 views
1

내가 좋은 기사를 활용하고있어 역사의 객체를 생성하는 방법 :NHibernate에 이벤트 리스너와 감사 - IPreUpdateEventListener.OnPreUpdate

http://ayende.com/blog/3987/nhibernate-ipreupdateeventlistener-ipreinserteventlistener

와는 정확히 예처럼 OnPreInsert을 구현했습니다. 그러나 엔터티를 업데이트 할 때 내 감사 요구 사항은 데이터베이스에 "기록"항목을 만드는 것입니다. 의가 있다고 가정 해 봅시다 :

  • 을 나는 Person 객체
  • 를 가져 내가

    personObj.FirstName = Console.ReadLine()

    을 수정;

  • 엔티티를 저장합니다. 이제 IPreUpdateEventListener.OnPreUpdate에 나는 UpdatedAt을 & UpdatedBy 법인 & 주 (단지 문서 등), 또한 나는 오래된 값을 포함하는 데이터베이스에 새 레코드를 추가 필요의 속성 (변경하려면 변경 전의 이름).

나는 그러나 내가 oldstate가 배열 프론 사람 객체를 생성하고 저장하는 방법을 몰라, PreUpdateEventoldstate가 배열을 포함 것을 보았다.

내가 원하는 것을 어떻게 얻을 수 있습니까?

감사합니다.

답변

1

그러나 Person 객체 fron OldState 배열을 작성하고 저장하는 방법을 알지 못합니다.

NHibernate Envers을 보셨습니까? 그것은 단지 그것을합니다.

어떤 이유로이 프레임 워크를 사용하지 않으려는 경우 해당 소스 코드를 살펴보십시오.

+0

나는 그것을 사용하고 싶다. 그러나 나는 할 수 없다 ... 감사합니다. – dragonfly