DDD 설계된 ASP.NET MVC2 웹 응용 프로그램에서 오류 처리와 관련하여 "모범 사례"는 무엇입니까? 예를 들어, 웹 응용 프로그램의 가장 일반적인 측면을 보자, 로그인 :DDD 맞춤형 ASP.Net MVC2 웹 응용 프로그램에서 오류 처리
- UserController는 : 분명히에 몇 도메인 객체에 결국 로그를 조정하거나 사용자를 거부하고 는 다른 부분에 리디렉션 필요에 따라 웹 인터페이스. 필자의 경우 IsLoggedIn() 또는 LogIn()과 같은 다른 UserTasks 메서드에 대한 호출이 약간 있습니다. 에 RedirectToAction을 더한 것입니다.
- UserTasks는 : 관련 도메인을 같은 User.IsUserInactive을 확인 SecurityService.ValidateUser() 또는 ()를 호출하는 것과 SecurityService 같은 객체 서비스, 낮은 도메인 개체를 조정하는 작업 의 고기를 가지고 있습니다.
- 보안 서비스 : 물론 좌표 인증/인증 서비스. MembershipProvider와 비슷하지만 초과 수하물은 없습니다.
- 사용자 : 사용자를 나타냅니다. 그렇지 않으면 빈도가 다양하므로 사용자 지정 메서드 IsDeleted, IsLockedOut 또는 이 FromDt와 ThruDt 사이인지 확인하는 IsuUserInactive()입니다.
정보를 유익하고 사용자에게 적대적이지 않은 방식으로 어떻게 오류를 포착합니까? 예외가있는 코드를 처리하고 Application_Error()에서 모든 코드를 처리합니까? 예를 들어, Password가 비어있을 때 ValidateUser()가 ArgumentNullException()을 던지고 암호가 올바르지 않은 경우 AuthenticationException()을 던져 주거나 bool = false를 반환해야합니까? 후자의 경우 유효성 검사가 실패한 원인을 사용자에게 어떻게 알 립니 까?