显示MVP模式验证错误的最佳实践

时间:2011-04-20 06:24:26

标签: c# .net mvp

我有一个用于用户注册的Presenter,我需要在其上实现验证错误,我所做的是为每个验证错误创建了一个方法,例如UserCannotBeEmpty()InvalidEmailAddress()UserAlreadyExists()等......

只有几个字段可以,但如果我有很多字段,它看起来不太好,我必须为此创建很多方法......

最好的办法是什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

更多字段有什么问题 - 更多验证?如果要检查20个不同的字段,并且每个字段都需要不同类型的验证,您必须实施许多方法。

当然,有一些常见的方法可以帮助你。您可能不需要UserCannotBeEmptyPasswordCannotBeEmpty方法。很可能你对CannotBeEmpty(string errorMessage)没问题。重构常见的东西(空检查,字母数字检查,日期时间/数字解析等等 - 依赖于类型),并仅在需要时实现特定于字段的验证。

请注意,特定于域的验证(您的业务规则,例如“生产日期之前不能发货”)应在模型端进行验证。