有没有一种快速的方法来为模型中的所有字段默认错误消息?
我希望验证返回文本:
“*为必填项”
...但是不想在每个字段上手动设置它。
谢谢保罗
最佳答案
您可以编写自定义的Required属性
[AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = true, Inherited = true)]
public sealed class AEMRequiredAttribute: ValidationAttribute
{
private const string _defaultErrorMessage = "* required";
public AEMRequiredAttribute()
: base(_defaultErrorMessage)
{ }
public override string FormatErrorMessage(string name)
{
return String.Format(CultureInfo.CurrentUICulture, "* required", name);
}
public override bool IsValid(object value)
{
if (value == null || String.IsNullOrWhiteSpace(value.ToString())) return false;
else return true;
}
}
如下调用此属性:
public partial class AEMClass
{
[DisplayName("Dis1")]
[AEMRequiredAttribute]
public string ContractNo { get; set; }
}
关于asp.net-mvc - MVC3客户端验证-仅显示“* required ”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5468917/