我是新來的C#MVC,我試圖添加一些動態驗證檢查到我在表單中使用的視圖模型。例如,我有一個名爲FirstName的字符串屬性。我可以將屬性StringLength(10)和Required()添加到它。查看模型屬性在運行時改變驗證規則
我的問題是,根據其他字段,名字StringLength可能從10到20等不等,我仍然想使用MVC驗證,但能夠修改它。我知道屬性是綁定到類的,所以也許我使用了錯誤的東西。
我想要屬性驗證的功能,但在運行時可以修改它。這可能嗎?
我是新來的C#MVC,我試圖添加一些動態驗證檢查到我在表單中使用的視圖模型。例如,我有一個名爲FirstName的字符串屬性。我可以將屬性StringLength(10)和Required()添加到它。查看模型屬性在運行時改變驗證規則
我的問題是,根據其他字段,名字StringLength可能從10到20等不等,我仍然想使用MVC驗證,但能夠修改它。我知道屬性是綁定到類的,所以也許我使用了錯誤的東西。
我想要屬性驗證的功能,但在運行時可以修改它。這可能嗎?
屬性中的值必須是文字。您仍然可以使用基於屬性的驗證,但您需要使用CustomValidation
標記並將其指向一個要使用的方法。如果它取決於對象中的多個字段,那麼您將希望將其放在類而不是屬性上。
看來你可以添加屬性驗證,在運行時通過實施DataAnnotationsModelValidatorProvider: Dynamic Attributes @ forums.asp.net
謝謝。這讓我想出瞭如何找到解決我的問題的方法。 – kailoon 2011-04-21 15:25:46