我用反射器搜索,但没有找到一个案例ValidationResult.MemberNames http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.validationresult.membernames.aspx应该包含多个值。
所以,首先我想知道为什么 MS 必须这样做IEnumerable<string>
,那么现在他们已经这样做了,我可以相信这个属性只会返回一个值吗?
Update
关于 DataAnnotations 验证系统,我发现更多的草率:
- The TryValidateProperty http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.validator.tryvalidateproperty.aspx and TryValidateObject http://msdn.microsoft.com/en-us/library/dd411803.aspx应该已经删除了错误验证结果参数(如果它们不再存在)。
- ValidationResult 应该覆盖 Equals 和 GetHashCode。
- 为什么 ValidationResult.Error 消息是可变的!?我什至无法自己构建 IEqualityComparer!
- 如果 DataTypeAttribute 仅用于表示问题,为什么它继承 ValidationAttribute,这只是误导,我必须努力奋斗,直到我明白(经过反思)它不起作用。 MS只是没有实施它。
而这样的例子不胜枚举。
考虑密码和密码确认。或任何开始/停止值,或任何其他跨字段验证。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)