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

本文关键字:最佳 错误 验证 MVP 模式 显示 | 更新日期: 2023-09-27 17:50:43

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

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

最好的方法是什么?

谢谢!

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

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

当然,这里有一些常见的方法可以帮助你。您可能不需要UserCannotBeEmptyPasswordCannotBeEmpty方法。最有可能你会很好与CannotBeEmpty(string errorMessage)。重构出常见的东西(空检查、字母数字检查、日期时间/数字解析等等——依赖于类型),并只在需要时实现特定字段的验证。

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