2011-10-13 2 views
1

내 ASP.NET MVC 3 응용 프로그램에 서비스 계층 패턴 (Martin Fowler's site here에 설명 된대로)을 사용하고 싶습니다.서비스 계층 패턴을 사용할 때 Visual Studio 2010 솔루션에 대한 폴더 레이아웃 규칙이 있습니까?

목표는 솔루션 구조를 설정하여 코드를 파고 들기 전에 올바른 프레임 워크를 설정하여 패턴을 더 쉽게 익힐 수있게하는 것입니다.

Visual Studio 2010 솔루션 내에서 솔루션, 프로젝트 및 폴더를 배치하는 일반적인 방법을 누구에게 보여줄 수 있습니까?

답변

1

구현 방법에는 여러 가지가 있습니다. 서비스 계층을 별도의 어셈블리로 세그먼트 화하거나 ASP.NET MVC 응용 프로그램과 동일한 어셈블리에있을 수 있습니다 (예 : Services 폴더). 그것에 대한 규칙은 없습니다. 이 계층에서 예상하는 재사용 수준과 프로젝트 크기에 따라 다릅니다. 무엇 그러나 중요한 것은 추상적이 서비스 계층입니다 :

public class MyController: Controller 
{ 
    private readonly IMyService _service; 
    public MyController(IMyService service) 
    { 
     _service = service; 
    } 

    public ActionResult MyAction() 
    { 
     ... call some methods on the service layer 
    } 
} 

그런 다음 당신이 당신의 의존성 주입 프레임 워크를 구성합니다 구체적인 구현을 묶는 : 다음

public interface IMyService 
{ 
    ... some service methods 
} 

와 컨트롤러가이 추상화에서만 작동이 .