获取内置验证器的验证元数据

发布于 2024-09-02 16:51:47 字数 161 浏览 5 评论 0原文

如何获取内置验证属性的验证元数据?

我正在尝试在表单上实现字数/字符计数,给出允许的剩余数量。当我自己实现字数验证和元数据(将其添加到AdditionalValues中)时,我可以访问这个罚款,但是花了很长时间寻找我找不到从StringLength属性中获取maximumLength的地方。

How do you get the validation metadata for the built in validation attributes?

I'm trying to implement a word count/character count on a form giving the remaining number allowed. As I am implementing the word count validation and metadata myself (adding it into AdditionalValues) I can access this fine, but having spent ages looking I can't find where to get maximumLength from the StringLength attribute.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黯淡〆 2024-09-09 16:51:47

没有内置方法可以从 StringLength 属性获取 maxLength。

您必须使用反射手动找到它,例如:

foreach( var property in model.GetType() )
{
     var stringLengthAttr = property.GetCustomAttributes(typeof(StringLengthAttribute), false).FirstOrDefault() as StringLengthAttribute;

     if( stringLengthAttr != null )
         return stringLengthAttr.MaximumLength;

}

There is no built in way to get the maxLength from the StringLength attribute.

You have to find it manually using reflection, something like:

foreach( var property in model.GetType() )
{
     var stringLengthAttr = property.GetCustomAttributes(typeof(StringLengthAttribute), false).FirstOrDefault() as StringLengthAttribute;

     if( stringLengthAttr != null )
         return stringLengthAttr.MaximumLength;

}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文