2017-04-25 12 views
-4

My Team은 REST API WCF 시스템의 리팩토링을 현재 아키텍처로 수행하기 위해 노력하고 있습니다. 기존 WCF 서비스를 응용 프로그램의 실제 비즈니스 컨텍스트를 나타내는 모듈로 나누고 싶습니다. 하나의 서비스 (단일 .svc 파일 의미)가 하나의 계약 인터페이스 만 구현할 수 있다는 것을 알고있는 한 여러 계약이있을 수 있지만 모두 동일한 단일 클래스로 구현되어야합니다.WCF 서비스 - 여러 계약 구현

리팩토링의 아이디어는 기존 WCF를 특정 비즈니스 컨텍스트를 담당하는 기능 블록 (모듈)으로 나누고 각각을 별도의 프로젝트에서 WCF 서비스가 아닌 일반 .dll로 구현하는 것이 었습니다. 그것들은 모두 하나의 "핵심"WCF 서비스에서 모두 "연결"됩니다. 대부분 app.config에 정의되어 있거나 DI 컨테이너에서 일반적인 종속성으로 주입되었습니다. 따라서 모든 프로젝트에는 특정 WCF 장식 특성을 가진 계약 인터페이스와 특정 모듈에 적용되는 구현이 포함됩니다.

첫 번째 단락에서 설명한 문제 (서비스 당 하나의 구현)로 인해 아이디어가 작동하지 않습니다. 부분 클래스로 구현을 만드는 아이디어는 작동하지 않습니다. 모듈은 별도의 프로젝트 여야합니다. 부분은 작동하지 않습니다. evry 모듈을위한 별도의 WCF 서비스도 갈 수있는 방법이 아닙니다. 변경은 FE에 투명해야하며, 우리는 그러한 서비스를 제공합니다. 이는 기존 서비스 x 5-6 상황을 의미하지 않습니다.

누구나 WCF에 대한 그런 접근 방법에 경험이 있습니까? BTW WCF 대신 sth 다른 질문입니다.

감사합니다.

답변

0

일부 어댑터 클래스를 만듭니다.

각 어댑터는 하나의 서비스 인터페이스를 참조하고 요청을 실제 클래스로 전달합니다.

+0

감사합니다. 그러나 핵심 서비스는 모듈의 계약과 구현에 대해 아무것도 모르는 것이라고 생각합니다. – user1658223