我使用反射器进行搜索,但没有找到ValidationResult.MemberNames应该包含多个值的情况。

因此,首先,我想知道为什么MS必须这样做IEnumerable<string>,然后既然他们已经这样做了,我可以依靠这个属性仅返回一个值吗?

更新资料
关于DataAnnotations验证系统,我发现更加草率:


如果TryValidatePropertyTryValidateObject不再存在错误,则应该已经从validationResults参数中删除了这些错误。
ValidationResult应该已覆盖Equals和GetHashCode。
为什么ValidationResult.ErrorMessage可变!我无法自行建立EqualityComparer!
如果DataTypeAttribute仅用于表示形式,为什么它会继承ValidationAttribute,这只是一种误导,我不得不努力直到我了解到(在反射之后)它不起作用。 MS只是没有实现它。


而这样的例子不胜枚举。

最佳答案

考虑密码和密码确认。或任何开始/停止值,或任何其他跨域验证。

10-02 02:07