我正在将我当前的 asp.net 站点迁移到 mvc 3。旧的 asp.net 页面实现了转发器控制,并且可以验证后面代码中的每一行。
我创建了一个模型类并继承了 IValidatableObject。见下面的代码:
public class ManageInstitutions : IValidatableObject
{
public ManageInstitutions() { }
public int InstitutionID { get; set; }
public string InstituteName { get; set; }
public string FName { get; set; }
public string LName { get; set; }
public string EAddress { get; set; }
public IList<InstitutionIPBL> IPDetailsList { get; set; }
//Validation Function
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
foreach (var item in IPDetailsList)
{
if (item.IPPart1.Length == 0 && item.IPPart2.Length == 0 && item.IPPart3From.Length == 0 && item.IPPart3To.Length == 0 && item.IPPart4From.Length == 0 && item.IPPart4To.Length == 0)
{
//How to return ValidationResult that will identify which row got an error?????????
}
}
}
}
这InstitutionIPBL
是一个来自旧的 asp.net 业务层的类。我重新使用这个类来表示我模型中的一个属性。
我需要知道如何确定哪一行出现错误。我正在使用此语法来检查该字段是否有效:Html.ViewData.ModelState.IsValidField("[Field Name]"))
我的问题是如何根据上述代码的说明性注释来识别哪一行出错。
任何人?请指教。先感谢您