這動態驗證工作正常對MVC 2
[MetadataType(typeof(Area_Validation))]
public partial class Area
{
...
}
public class Area_Validation
{
[Required(ErrorMessage = "Please add this field.")]
public int Email { get; set; }
[Required(ErrorMessage = "Please add this field")]
public string Name { get; set; }
}
但如何如果Area_Validation
是動態創建?例如認購場是在後端可以由用戶創建,並最終像這樣:
如何設置的元對自動驗證每場?
目前我正在做:
public class SubscriberFormViewModel
{
public List<SubscriberFieldModel> Fields { get; private set; }
public Calendar Calendar { get; private set; }
public Company Company { get; private set; }
public SubscriberFormViewModel()
{
// TODO: This is only for testing while validation is not set
}
public SubscriberFormViewModel(Decimal calendarId)
{
if (calendarId > 0)
{
SubscribersRepository db = new SubscribersRepository();
Calendar calendar = db.GetCalendarById(calendarId);
Company company = db.GetCompanyById(calendar.company_id);
this.Fields = db.FindAllSubscriberFieldsByCalendar(calendarId);
this.Calendar = calendar;
this.Company = company;
}
else
this.Fields = new List<SubscriberFieldModel>();
}
}
,我想設置元在所有Fields
財產
換句話說,這Fields
從數據庫填平,可以有幾種類型,可以是string
,number
,dropdown
等...有點像MailChimp字段屬性:
是有辦法做到這一點programmaticaly或者我需要建立一個jQuery插件來驗證它,並停止使用使用驗證的MVC2?
謝謝
你好再次:)我只是想在它上面添加一些jQuery來驗證使用類命名約定,因爲我知道什麼類型,如果它是必需的......這一切只是爲了使用JavaScript,如在控制器我總是可以返回錯誤,只是想做正確的事情,並保存到服務器的往返旅程:) - **我會**看看這個項目。 – balexandre 2010-10-11 13:42:41
那麼...請讓我更新這個!還可以看看這個jQuery插件:'http:// bassistance.de/jquery-plugins/jquery-plugin-validation /'。它與asp.net mvc無縫集成,是一個非常好的插件,可以幫助您滿足您的需求... – Lorenzo 2010-10-11 14:18:33