我更喜歡模型註釋。任何jQuery驗證,你可能有你也想作爲一個模型註釋,以確保有人沒有得到你的jQuery驗證通過禁用JavaScript或黑客入侵...
我發現最簡單的方法添加複選框驗證以及其他自定義的驗證將使用CustomValidationAttribute如下所述:
http://weblogs.asp.net/peterblum/archive/2009/12/07/the-customvalidationattribute.aspx
例子:
[CustomValidation(typeof(Category), "FinalCheck")]
public partial class Category
{
[CustomValidation(typeof(Category), "TestCategoryName")]
public string CategoryName { get; set; }
public bool Active { get; set; }
public bool ShowOnHomepage { get; set; }
public static ValidationResult FinalCheck(Category pCategory, ValidationContext pValidationContext)
{
if (!pCategory.Active && pCategory.ShowOnHomepage)
return new ValidationResult("The category must be active in order to show it on the homepage.", new List<string> { "Active", "ShowOnHomepage" });
return ValidationResult.Success;
}
public static ValidationResult TestCategoryName(string pNewName, ValidationContext pValidationContext)
{
if (Regex.IsMatch(pNewName, @"^\d"))
return new ValidationResult("Cannot start with a digit", new List<string> { "CategoryName" });
return ValidationResult.Success;
}
}
我只能談論我...我preffer模型註釋。 – 2012-04-25 14:20:31
您是否認爲使用JQuery的靈活性比使用C#代碼的模型更具靈活性? – Funky 2012-04-25 14:21:15
您需要客戶端驗證以及服務器端驗證。 – 2012-04-25 14:22:00