2013-02-27 2 views
0

Asp.net (Webforms)의 요청 - 응답 패턴이 MVC 세계에서 전달되고 반환되는 '모델'과 같거나 유사합니다. 기본적으로 모든 요청/응답 클래스가 수행중인 요청/응답 (즉, 별도의 요청 및 응답 클래스 만들기) 패턴을 사용해야 할 경우 요청 또는 응답과 관련된 일부 속성이 포함되어 있으며 실제로 모델에 배치 할 수 있어야합니다 , 예. MVC의 세계에서 사용하는 것이 좋습니다의 인요청 - 응답 패턴 mvc

string Username { get; set; } 
string AuthenticationTicket { get; set; } 

을 LoginModel.cs 반면

LoginRequest.cs contains 
string Username { get; set; } 

LoginResponse.cs contains 
string AuthenticationTicket { get; set; } 

있을 것입니다?

감사합니다.

답변

0

레벨을 보면서 요청 (모델 바인더를 통해 컨텍스트 매개 변수/모델을 바인드 한 포스트 백)과 응답 (응답 개체 변경/렌더링)이 모두 동일하기 때문에 둘 다 동일하다고 주장 할 수 있습니다. viewmodel을 기반으로 한 뷰)를 제공하지만 다른 레벨에서는 WebForms이 Windows Forms 개발자와 MVC, IMO, 웹 프레임 워크를위한보다 성숙한 SoC 아키텍처로 자연 스럽기 때문에 근본적으로 다릅니다.

MVC 애플리케이션을 처리 할 때 나는 보통 내가 이런 일을했을 사용자 세부 시나리오에 있도록 요청에 대한 이해 뷰 모델과 또 다른 하나를 나타내는 하나 개의 클래스에 대한 이동 :

public class LoginModel 
{ 
    public string Username {get;set;} 
    public string Password {get;set;} 
} 

public class LoginViewModel 
{ 
    public string Username {get;set;} 
    public string Fullname {get;set;} 
    public string LastLogin {get;set;} 
} 

public ActionResult Login(LoginModel model) 
{ 
    /* do whatever you need */ 

    return new LoginViewModel { ... }; 
} 
0

당신 WCF 시나리오를 다룰 때 여전히 Request/Response DTO가 필요합니다. Request 엔티티는 직렬화 가능해야하며 MVC 뷰와 분리 된 정보를 포함해야합니다. 반면 뷰 모델에는 관련 뷰에 바인딩 된 정보가 들어 있습니다. 이 도움이되기를 바랍니다!