사용자가 GUI를 통해 기존 개체 (정확히 "필터"도메인 개체)를 편집 할 수있는 시스템에서 작업하고 있습니다. UI 힌트로서 사용자가 객체에 실제로 수정 한 경우에만 저장 버튼을 활성화하려고합니다. 나는 누군가가이 문제에 대해 어떤 경험을했는지, 그리고 가장 좋은 방법이이 문제에 접근 할 수 있는지 궁금해했다.개체 편집 및 isDirty() 플래그
도메인 객체에 isDirty() 플래그를 추가하려고 생각했습니다. 사용자가 필터 편집을 시작하면 사본을 만들어 GUI로 전달하고 사용자가 사본을 수정할 수있게합니다. 그런 다음 isDirty() 플래그를 바인딩하면 저장 버튼이 활성화/비활성화됩니다. 저장시 차이점은 원본 개체에 병합되고 유지됩니다.
덧붙여서, 사용자가 객체에 대한 변경 사항을 취소하면 어떻게 될지 생각했습니다. isDirty() 플래그는 false를 반환해야합니다. 그래서 이것을 달성하는 유일한 방법은 각 속성의 원래 값을 도메인 객체 내에 유지하는 것입니다.
아이디어가 있으십니까?
모든 답변을 주셔서 감사합니다. 나는이 대답을 처음으로 받아 들였고 가장 큰 상향 음조를 가지고있었습니다. –
이것은 CSLA와 매우 흡사합니다. .NET을 사용하는 경우 체크 아웃하는 것이 좋습니다. http://www.lhotka.net –