Asp.net mvc 2 处理DDD风格的ASP.NETMVC2 Web应用程序中的错误
关于DDD设计的ASP.NET MVC2 web应用程序中的错误处理,“最佳实践”是什么?例如,让我们看看web应用程序最常见的方面,即登录:Asp.net mvc 2 处理DDD风格的ASP.NETMVC2 Web应用程序中的错误,asp.net-mvc-2,error-handling,domain-driven-design,Asp.net Mvc 2,Error Handling,Domain Driven Design,关于DDD设计的ASP.NET MVC2 web应用程序中的错误处理,“最佳实践”是什么?例如,让我们看看web应用程序最常见的方面,即登录: 用户控制器:显然是坐标 一些域对象最终将被删除 登录或拒绝用户,以及 重定向到web的其他部分 接口。就我而言,它是 对不同用户任务的几个调用 IsLoggedIn()或LogIn()等方法, 再加上一些动作 用户任务:拥有工作的内容 协调相关领域 对象服务,如 SecurityService与下域 对象,例如调用 SecurityService.Va
- 用户控制器:显然是坐标 一些域对象最终将被删除 登录或拒绝用户,以及 重定向到web的其他部分 接口。就我而言,它是 对不同用户任务的几个调用 IsLoggedIn()或LogIn()等方法, 再加上一些动作
- 用户任务:拥有工作的内容 协调相关领域 对象服务,如 SecurityService与下域 对象,例如调用 SecurityService.ValidateUser()或 正在检查User.IsUserInactive()
- 安全服务:显然 协调 认证/授权 服务。类似于 成员资格提供程序,不带 超重行李
- 用户:表示用户。不 贫血,因为它有各种 特定于用户的方法,例如 用于检查 IsDeleted、IsLockedOut或如果用户 在FromDt和ThruDt之间
您如何冒充错误,使其具有信息性而不敌视用户?您是否会在代码中添加异常,然后在Application_Error()中处理所有异常?例如,ValidateUser()应该在密码为空时抛出ArgumentNullException(),在密码不正确时抛出AuthenticationException(),还是返回bool=false?如果是后者,您如何告知用户导致验证失败的原因 我假设您正在使用基于我看到的命名约定的WhoCanHelpMe/S#arp架构?如果是这样的话,我强烈建议看一看哪一个演示了更干净的应用程序服务层的实现。查看从服务层返回的
ActionConfirmation
结果;我们发现,这是从Tasks层返回一个不那么严重的错误结果的理想方法