일종의 감사를 수행해야합니다. 우리는 레코드가 삽입, 업데이트, 제거 또는 열릴 때 저장하려고합니다. 일부의 경우좋은 감사 알고리즘을 설계하는 방법은 무엇입니까?
private void RemoveSomeObject(SomeObject myObject)
{
/* Do some stuff that removes the object*/
MySingleton.GetInstance().Audit(myObject.Title, AuditTypes.Delete)
}
:
MyForm.cs :이 메소드를 호출 양식에
public void Audit(string audit, AuditTypes type)
{
AuditEntry = new AuditEntry(){ Audit = audit, TypeId = (int)type };
// some logic to commit the audit entry to the database
}
public enum AuditTypes
{
Insert = 1,
Update = 2,
Delete = 3
Open = 4
}
어딘가에 :
은 지금 나는 싱글 클래스에 간단한 방법을 만들었습니다 이유는,이 방법이 코드의 모든 곳에서이 방법을 사용하기 때문에 나는 이런 종류의 선을 가지기 때문에 이것이 갈 길이 없다고 생각합니다.
더 많은 OO 방식으로하는 것이 더 스마트하다고 생각합니다. 어떻게 생각합니까? 편집 :
사용자 ID와 날짜를 기록하지만 알림과 관련이 없습니다.
이것이 옵션인지는 모르지만, 과거에는 * table * _audit 버전에 대해 삽입/업데이트/삭제 트리거로 감사를 수행하는 시스템에서 작업했습니다. 테이블의. – asawyer
어느 RDBMS입니까? 감사 데이터 변경 * 실제로는 데이터베이스에 속해 있습니다 ... – Yuck
그는 데이터베이스에 대해서도 언급하지 않았는데 왜 데이터베이스가 관련되어 있다고 가정합니까? 우리가 알고있는 모든 것에 대한 트위터 스팸봇이 될 수 있습니다. – Aidan