도메인 기반 디자인을 사용하여 응용 프로그램을 개발하고 있습니다. 내가 사용한 패턴 중 하나는 저장소 패턴입니다. 간단히하기 위해 클래스와 인터페이스를 따르고 있다고 가정 해 봅시다.도메인 기반 디자인 - 도메인 객체에서 하나의 속성의 고유성을 확인하는 방법
자동차 도메인 개념을 나타내는 자동차 도메인 클래스.
public class Car {
public int Id {get;private set;}
public string SomeUniqueCode {get;private set;}
}
ICarRepository - Car 개체의 변경 내용을 추가, 삭제 또는 저장하기위한 인터페이스입니다.
내 문제는 데이터베이스의 모든 Car 개체 중에서 SomeUniqueCode 속성의 고유성을 확인하는 방법입니다. 이 특성은 오브젝트 라이프 사이클 중 언제든지 사용자가 자동으로 생성하지 않고 변경됩니다. 물론 유일한 해결책은 데이터베이스에 고유 키를 넣는 것이지만 DDD의 원칙은 아닙니다. 단일 개체의 유효성을 검사하는 데 사용되는 사양 패턴을 보았습니다. 그 패턴은 Car 객체 세트에 어떻게 적용될 것입니까?
사양 클래스 (CheckUniqueCarSpecification이라고 부름)가 ICarRepository에 액세스하는 것이 합법적입니까?
이 질문을보십시오. http://stackoverflow.com/questions/5818898/where-to-put-global-rules-validation-in-ddd –
감사합니다. 그것은 아마도 대답 일 것입니다 - 저장소에 대한 액세스 권한이있는 사양입니다. –