【发布时间】:2012-08-29 03:32:55
【问题描述】:
我正在尝试使用validation in Spring.NET 来验证类的字符串属性是否是格式正确的电子邮件地址。我找到了 EmailValidator 类(source、documentation),但我不确定在我的类中实际使用它所需的语法。
我正在尝试这个:
<v:email id="validate.myClass.MailFrom" test="MailFrom">
<v:message id="myClass.MailFrom" providers="myClassProvider"/>
</v:email>
但我得到了错误:
命名空间“http://www.springframework.net/validation”中的元素“组”在命名空间“http://www.springframework.net/validation”中具有无效的子元素“email”。预期的可能元素列表:命名空间“http://www.springframework.net/validation”中的“验证器、必需、条件、正则表达式、引用、集合、组、任何、独占”。
包含 EmailValidator 的同一个命名空间还包含 ConditionValidator、RegularExpressionValidator 等,它们似乎对应于允许的子元素。 EmailValidator 似乎并非如此。我错过了什么?
【问题讨论】:
-
@Ramhound 我理解错误。我不知道哪些元素可以让我验证电子邮件地址,所以我不知道如何“修复”该代码。我已经对我对允许的孩子的困惑添加了一些澄清。
-
@Ramhound 查看我为 EmailValidator 发布的源链接;它已经在内部使用了正则表达式。
-
我删除了我的 cmets,因为它打扰了我,你没有阅读整个 cmets。我建议您使用
regex或validator子元素,这正是Marijn所建议的。我不应该去外部网站来帮助你。根据错误消息和第三方网站上的示例代码,我发现您必须使用validator子元素。 -
@Ramhound 告诉我使用
validator元素是没有用的,但同时也指出了我所缺少的type属性。我确实首先尝试了几个使用validator元素的变体,但发布我尝试过的所有内容似乎并不合理。您抱怨我没有阅读您的 cmets,然后说您不应该阅读我链接到的文档作为我的问题的一部分。嗯,好吧,伙计……
标签: c# validation spring.net