【发布时间】:2015-07-15 16:55:16
【问题描述】:
我有这个自定义验证:
[AttributeUsage(AttributeTargets.Property)]
public class CollectionNotEmptyAttribute : ValidationAttribute
{
private const string errorMessage = "'{0}' must have at least one element.";
public CollectionNotEmptyAttribute()
: base(errorMessage)
{
}
public override bool IsValid(object value)
{
var collection = value as ICollection;
if (collection != null)
{
return collection.Count > 0;
}
return false;
}
public override string FormatErrorMessage(string name)
{
return String.Format(this.ErrorMessageString, name);
}
}
我的视图模型
public class ProjectViewModel
{
public ProjectViewModel()
{
this.Users = new Collection<UserProjectViewModel>();
}
public int ProjectID { get; set; }
[CollectionNotEmpty]
public Collection<UserProjectViewModel> Users { get; set; }
}
我的观点
@Html.ValidationMessageFor(m => m.Users)
验证工作正常,Model.IsValid 如果收集计数低于 1,则返回 false,但未显示错误消息。
我们将不胜感激。
【问题讨论】:
标签: c# asp.net-mvc