自定义正则表达式不验证客户端我已经构建了一个自定义属性来在客户端验证正十进制值。问题是当我将正则表达式直接应用于属性时它工作正常,但是当我使用自定义属性时它不起作用。工作模式:[RegularExpression(@"^(?!0?(,0?0)?$)([0-9]{0,3}(,[0-9]{1,2})?)?$",ErrorMessage="Largurainválida.")][Required(ErrorMessage="Larguraobrigatória.")][Display(Name="FormatoAberto")]publicdecimalSizeOpenedWidth{get;放;}自定义属性:publicclassPositiveDecimalAttribute:RegularExpressionAttribute{publicPositiveDecimalAttribute():base("^(?!0?(,0?0)?$)([0-9]{0,3}(,[0-9]{1,2})?)?$"){}}集成在酒店中:[PositiveDecimal(ErrorMessage="Largurainválida.")][Required(ErrorMessage="Larguraobrigatória.")][Display(Name="FormatoAberto")]publicdecimalSizeOpenedWidth{get;放;在第二个中,客户端验证给出了一条错误消息:字段FormatoAberto必须是一个数字。我是否需要在客户端验证中集成新属性?您需要在global.asax中注册您的财产。在其Application_Start()方法中,添加如下代码:以上为C#学习教程:客户端验证不共享自定义正则表达式。如果对大家有用,需要进一步了解C#学习教程,希望请关注—DataAnnotationsModelValidatorProvider.RegisterAdapter(typeof(PositiveDecimalAtt?ribute),typeof(RegularExpressionAttributeAdapter));本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
