您更喜歡哪種方法來進行ASP.NET MVC驗證?爲什麼? Fluent Validation? Data annotations?任何其他?Fluent驗證與數據註釋
回答
- 它給我的我的驗證規則
- 做不同性質的條件驗證更好的控制容易得多相比,數據註釋
- 它分離驗證從我的視圖模型
- Unit testing與數據註釋相比要容易得多
- 它具有優秀的客戶端驗證支持大多數標準驗證規則
從這個更多的觀點來看(http://www.webdevbros.net/2010/12/03/asp-net-mvc-fluent-validation-and-tesing /)文章:1.太多的註釋讓你的模型看起來很醜(類似於你的觀點3)2.更好的可重用性3.更好的性能(作爲不反射) – SiberianGuy
@Idsa性能點聽起來很可疑,只需要在每個模型中進行一次反射,這假設一個好的實現,我不知道這個特定的實現是如何工作的。 – CodesInChaos
@CodeInChaos,看起來像你是對的。但我會保留在那裏,因爲我也不確定(也懶得發現)它是如何實現的。 – SiberianGuy
我明明喜歡數據註釋因爲......
- 所有驗證規則可以在一個地方配置代碼(模型元數據類中),並且不需要在任何地方重複其他。
- 當使用數據註釋屬性時,對客戶端驗證(再次 - 沒有重複的驗證規則!)有很好的支持。
- 數據註釋屬性可以是測試以確保它們在那裏。
- 還有不錯社區創建的其他驗證屬性(例如Data Annotations Extensions)。
我認爲大多數這些屬性都可以通過某種形式的流暢驗證來實現。我不知道OP中的圖書館是否支持這一功能,但原則上這是可能的,也不是很難。 – CodesInChaos
什麼是測試屬性的存在點?這不是基本上重複驗證規則? – Sam
@Sam:通過測試屬性是否使用數據註解屬性進行修飾,您不會測試屬性本身的功能;你只是確保它在那裏。我現在應該說,現在,兩年後,我在達林身邊並同意他的回答。 –
- 1. POCO實體Fluent API與數據註釋
- 2. 數據註釋驗證
- 3. 自定義數據註釋驗證與客戶端驗證
- 4. 註釋驗證
- 5. Uploadify和ASP.NET數據註釋/驗證
- 6. 帶數據註釋的MVC3驗證?
- 7. MVC 3數據註釋關閉驗證
- 8. 數據註釋和WPF驗證
- 9. 數據註釋驗證程序
- 10. 數據註釋/驗證和動態值
- 11. 驗證使用數據的註釋
- 12. 與數據註釋驗證方法的參數屬性
- 13. 驗證javax.persistance註釋?
- 14. Java註釋驗證
- 15. 使用數據註釋驗證器與實體框架
- 16. 日期時間(日期和時間)與數據註釋驗證
- 17. jQuery驗證與數據註釋MVC3中不使用Unobstrusive
- 18. Silverlight的驗證與數據註釋不工作
- 19. ASP.NET MVC數據註釋客戶端驗證與繼承RegularExpressionAttribute
- 20. asp.net MVC 2驗證文件上傳與數據註釋
- 21. 驗證使用數據註釋與多個提交按鈕
- 22. 使用Spring MVC註釋驗證與Freemarker
- 23. 如何使用元數據類驗證數據註釋
- 24. 複雜的數據驗證使用數據註釋
- 25. 用SpringMVC註釋驗證 - 數據綁定的數據類型
- 26. 驗證數據類型的MVC數據註釋
- 27. 必填如果數據數據註釋需要檢查驗證
- 28. 的javax驗證,驗證對象與註釋
- 29. Spring驗證與使用註釋的Hibernate驗證
- 30. 驗證模型註釋
我討厭這個關於StackExchange的「不建設性」的東西。我很確定StackOverflow是問這類問題的最佳地點,因爲這裏有很多有真正經驗和豐富知識的人。 – SiberianGuy
還有一點很有趣,值得注意的是,那些不具有建設性的問題通常會有很多upvotes,所以它們實際上對人有幫助。這件事有一定的問題 – Dmitry
「封閉不具有建設性」......我在下面的答案中看到大量的事實! – felickz