C# 응용 프로그램에 Entity Framework를 사용하고 있습니다. 전적으로 구현하는 데 거의 다되었지만 유창한 API에 약간 혼란 스럽습니다. 내 (간체) 클래스 class Customer : IEntity {
public Id { get; set; }
public Name Name { get; set; };
public
DDD 리포지토리는 항상 집계를 반환해야하며 모든 값 개체 및 엔터티를 반환해야합니까? 예를 들어, 유형 및 항목이있는 Invoice 객체가 있습니다. Invoice
--Id
--Issuer
--InvoiceType
--Items
데이터는 4 개의 SQL 테이블에 유지됩니다. 그것은 전체 상태의에서 저장소는 항상 집계
집계 루트에서 저장소에 액세스하는 것은 나쁜 습관이라고 생각합니다. 이 경우, 다음 예를 살펴보다 : class User {
private String username;
public void changeUsername(String newUsrname) {
// How will I persist username to database
I 후속 도메인 객체 구조 Invoice
- List<Items>
- Service
송장 항목의 목록을 가지고 있으며, 그 각 항목은 서비스를하고 있습니다. 내가 제대로 이해하면 DB 구조가 Invoices Table
Items Table (fk to invoice, fk to service)
Services Table
을 따르고,
나는 DDD를 연습하고, 나는이 현재처럼 보이는 아주 간단한 예를 가지고 : Polling
getEventBus() -> Bus
getEventStorage() -> Storage
getMemberRepository() -> MemberRepository
getCategoryRepository() -> CategoryRe
InvoiceType 인 Invoice 개체가 있습니다. 이제이 상황을보고 InvoiceType이 인보이스없이 존재할 수 있습니다. 내가 Invoice을 하나의 집계 루트로 처리해야하고 InvoiceType을 다른 집계 루트로 사용하고 ID 참조를 통해 이들을 연결해야합니다. 그렇지 않으면 InvoiceType이 송장 집계 내의 엔티티이어야합니까? 또한 인
다음 예에서 _customRoleRepository을 구현하는 데 권장되는 방법은 무엇입니까? 응용 프로그램 서비스에서 다음 코드가 실행됩니다. var user = _userRepository.GetById(1);
var customRole = _customRoleRepository.GetById(user.CustomRoleId);
또는 var use
DDD는 집계 당 저장소를 지정하지만, Spring Data JPA를 채택 할 때 우리는 엔티티마다 인터페이스를 선언 할 때만 이점을 활용할 수 있습니다. 이 임피던스 불일치를 어떻게 해결할 수 있습니까? 집계 저장소에 캡슐화 된 저장소 인터페이스를 사용해보고 싶습니다. OK 솔루션인가요? 주어진 예에 : Customer 집계 루트와 각 엔티티가 자신의 저
도메인 로직과 읽기 모델이 혼합되어 있기 때문에 읽기 모델에 어려움을 겪고 있습니다. 호텔이나 항공사에 대한 견적을받는다고 상상해보십시오. 내 경우에는 배송됩니다. 견적을 받으려면 기존 요율표를 읽고 요율을 계산해야합니다. 이것을 견적으로 기록하여 결국 주문으로 바꿀 수도 있지만 따옴표 부분은 본질적으로 일부 논리 (즉, 현재의 연료 요금을 얻는 서비스)가
사용자 엔티티에 대한 모든 저장소 작업을 담당 할 저장소를 프로젝트에 생성합니다. mongo를 db로 사용하고 mongoreactive를 클라이언트로 사용합니다. 내가 가지고있는 문제는 유형에 관한 것입니다. trait UserRepository {
save(user: User) : ?
}
trait MongoUserRepository ext