c#应用程序的错误处理问题

时间:2011-09-08 20:27:35

标签: c# error-handling mvp

我正在为我的网站实施牛仔板(或论坛),我在c#和asp.net中使用MVP模式以及连接到数据库的类型化数据集。我的问题是,我不知道我应该在哪里处理可能的错误并验证传入/传出数据。我想出了两个不同的解决方案:

解决方案1:

view:不做任何事只是将数据传递给演示者

presenter:与模型,数据库和视图相关的验证和错误处理

model:什么也不做,只是从数据库返回数据或错误

解决方案2:

与页面和用户输入相关的

view:验证和错误处理

presenter:不做什么只是调解员

model:与数据库和模型相关的验证和错误处理

那么哪种解决方案更好?

2 个答案:

答案 0 :(得分:1)

我个人会代表

的第二个解决方案
  

view:与页面和用户输入相关的验证和错误处理

此。因为它对于简单(f.e输入错误)很重要,可以给用户提供即时反馈,而不是让他等待模型的响应。

答案 1 :(得分:1)

我绝对推荐解决方案2.

尽可能在视图中进行验证,以便用户在发送数据后可以预期交互成功的大部分时间。在应用程序中再次验证以过滤掉无效和/或操纵的请求并应用特定于域的规则。

请记住,由于MVP是一种UI模式,因此模型只是演示者组装的数据容器。域模型,业务逻辑,数据库访问以及最终验证应该位于应用程序本身的基于MVP的UI层下面。