.NET 4.5 C # Web API RESTful 솔루션을 구축 중이며 도메인 기반 설계를 사용하여 설계된 솔루션에 대해 내 프로젝트 솔루션이 정확하고 현명한 지 (아마도) 알려달라고 부탁합니다.
이 솔루션은 6 개의 프로젝트로 분할되었습니다.
- /베이스
(아무것도 언급하지 않음)
웹 프로젝트는 솔루션과 외부 세계 사이의 인터페이스를 형성합니다. 웹 API 컨트롤러를 포함합니다. 요청 오브젝트에서 값을 수집하고 BizApi 계층에 작업을 요청하는 것 이상의 논리가 거의 없습니다.
- /Biz.Api
(기준으로 참조)
도메인 서비스를 제공하고 / Base 인터페이스 프로젝트가 /Biz.Domain 프로젝트의 도메인 비즈니스 논리 개체에 액세스 할 수 있도록합니다.
- /Biz.Domain
(Biz.Api 참조)
Biz.Api 계층에 대한 도메인 클래스를 제공합니다. 이들은 메모리에서 비즈니스 데이터를 조작하는 방법을 제공합니다.
- /Dal.Db
(Biz.Api 참조)
데이터베이스 저장소 계층. 데이터베이스에 액세스하고 반환 된 데이터를 / Interfaces 레이어에 정의 된 내부 DTO에 매핑합니다.
- /Dal.Services
(Biz.Api 참조)
웹 서비스와 같은 외부 종속성에 프록시 계층을 제공하고 반환 된 데이터를 / Interfaces 프로젝트에 정의 된 내부 DTO에 매핑합니다.
- / 인터페이스
(위의 대부분의 프로젝트에서 참조)
솔루션 주위에 데이터를 전달하기위한 DTO 클래스와 IoC와 같은 계약을 정의하기위한 C # 인터페이스가 포함되어 있습니다.