2010-08-12 20 views
3

我用反射器搜索,我沒有設法找到ValidationResult.MemberNames應該包含多個值的情況。ValidationResult.MemberNames屬性是否會包含多個值?

所以,首先我想知道爲什麼MS必須做到這一點IEnumerable<string>,那麼現在他們已經做到了這一點,我可以依靠這個屬性只會返回一個值嗎?

更新
關於DataAnnotations驗證系統,我覺得更多的隨意性:

  1. 的,如果他們不存在任何更TryValidatePropertyTryValidateObject應該移除了validationResults參數錯誤。
  2. ValidationResult應覆蓋Equals和GetHashCode。
  3. 爲什麼ValidationResult.ErrorMessage是可變的?我無法事件自己構建EqualityComparer!
  4. 如果DataTypeAttribute僅用於表示考慮,爲什麼它會繼承ValidationAttribute,這只是誤導,我必須奮鬥直到我理解(在反射之後)它不起作用。 MS只是沒有實現它。

而且名單還在繼續。

+0

確實,ValidationResult類非常難看。然後,它的靜態只讀字段名爲「成功」的諷刺,它永遠是空的,所以絕對沒有成功的機會。這個討厭的ValidationResult類的一個實例總是一個失敗。更何況它不是可序列化的.. – ducu 2013-01-24 14:06:50

回答

2

考慮密碼和密碼確認。或者任何開始/停止值或任何其他交叉字段驗證。

+1

我明白了。它仍然有點愚蠢,看看我的其他方面。 – Shimmy 2010-08-18 10:29:53

相關問題