2011-08-17 4 views
3

과수원에서 콘텐츠 항목을 삭제할 때 관련된 모든 데이터베이스 레코드가 남아있는 이유에 대해 궁금한 점이 있습니까? 이는 모든 콘텐츠 유형 및 관련 부분에 적용됩니다. 나 좀 낭비한 것 같니? ContentHandler 클래스를 사용하여 OnRemoved를 탭하고 ContentPartRecords를 직접 제거 할 수 있다는 것을 알고 있습니다. 나는 그것이 데이터베이스에서 RoutePartRecord를 떠나는 콘텐트 아이템을 삭제하는 것이 얼마나 합리적인지를 볼 수 없다.과수원 CMS 콘텐츠 항목 제거/삭제

답변

2

이러한 동작의 논리는 제거 된 레코드를 유지하고 제거 된 것으로 플래그하는 것이 완전히 제거하는 것보다 낫습니다. 왜?

  1. 그들은 (법적인 이유로)
  2. 전체 역사를 유지하는 것은 변화를 추적하는 데 유용하고 또한이다 많은 시나리오에서 필수가-이 삭제 취소 할 수 있습니다.

그리고 최근에는 저장 공간이 매우 저렴합니다.

discussion에서 Codeplex와 정확히 동일한 문제를 확인할 수도 있습니다.

+0

감사합니다. @pszmyd. 내 RoutePartRecord 테이블에 중복 레코드가 발생하지 않도록해야한다고 생각하지만 프레임 워크를 신뢰할 수 있어야합니다. – Brendan

+1

때때로 중복이 문제가 될 수 있습니다 - 동의합니다. Orchard 제거 동작을 인식하지 못하고 테이블 열을 고유 한 것으로 선언했을 때 나는 하나를 만났습니다. 이전에 제거한 항목을 다시 추가하려고 시도했을 때 오류가 왜 울 렸는지 궁금하십니까? 물론 그것이 실제로 어떻게 작동하는지 알게 될 때까지. –

관련 문제