asp.net-mvc – 如何为MVC创建自定义验证属性
发布时间:2020-05-24 04:51:57 所属栏目:asp.Net 来源:互联网
导读:我想为MVC2创建一个不继承RegularExpressionAttribute但可以在客户端验证中使用的电子邮件地址的自定义验证属性.任何人都可以指向正确的方向吗? 我尝试过一些简单的东西: [AttributeUsage( AttributeTargets.Property | AttributeTargets.Field, AllowMulti
|
我想为MVC2创建一个不继承RegularExpressionAttribute但可以在客户端验证中使用的电子邮件地址的自定义验证属性.任何人都可以指向正确的方向吗? 我尝试过一些简单的东西: [AttributeUsage( AttributeTargets.Property | AttributeTargets.Field,AllowMultiple = false )]
public class EmailAddressAttribute : RegularExpressionAttribute
{
public EmailAddressAttribute( )
: base( Validation.EmailAddressRegex ) { }
}
但它似乎不适用于客户端.但是,如果我使用RegularExpression(Validation.EmailAddressRegex)]它似乎工作正常. 解决方法您需要为新属性注册一个适配器才能启用客户端验证.由于RegularExpressionAttribute已经有一个适配器,它是RegularExpressionAttributeAdapter,所有你需要做的是重用它. 使用静态构造函数将所有必需的代码保留在同一个类中. [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property,AllowMultiple = false)]
public class EmailAddressAttribute : RegularExpressionAttribute
{
private const string pattern = @"^w+([-+.]*[w-]+)*@(w+([-.]?w+)){1,}.w{2,4}$";
static EmailAddressAttribute()
{
// necessary to enable client side validation
DataAnnotationsModelValidatorProvider.RegisterAdapter(typeof(EmailAddressAttribute),typeof(RegularExpressionAttributeAdapter));
}
public EmailAddressAttribute() : base(pattern)
{
}
}
有关更多信息,请查看此文章解释完整的过程. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- .net – Nuget包,没有nuget包管理器?
- asp.net-mvc-2 – 强大类型的ActionLink在Asp.Net MVC 2?
- asp.net-mvc-2 – MVC2 – MVC3升级
- asp.net – asp .net mvc OnResultExecuting modify filter
- ASP.NET MVC – 返回JavaScriptResult不起作用
- asp.net-mvc – 奇怪的MVC问题
- asp.net – 如何设置通配符(*)子域?
- asp.net – 在Web.config中是否可以在指定目录中注册所有用
- asp.net-mvc-3 – 如何将现有文件夹与其所有子文件夹和内容
- asp.net-mvc – asp.net mvc – 视图中的命名空间
推荐文章
站长推荐
- asp.net – Visual Studio加载项自动附加到Devel
- SignalR(.NET Core)中的JWT身份验证,而不在查询字
- asp.net-web-api – ASP.NET Core中的IHttpActio
- asp.net – 谁在生产应用程序中实际使用DataGrid
- iis-7 – ASP经典IIS7问题
- 从asp.net ListBox中获取所有选定的项目
- asp.net-mvc-3 – 使用EditorFor/TextBoxFor/Tex
- asp.net-mvc – MVC 5中的Web API属性路由异常:
- 使用ASP.NET AJAX Control Toolkit设置焦点
- asp.net-mvc-3 – ASP.NET MVC3从https重定向到h
热点阅读
