gpt4 book ai didi

asp.net-mvc - 是否可以在 MVC 3 中为 StringLength 验证器提供运行时值?

转载 作者:行者123 更新时间:2023-12-04 14:49:54 26 4
gpt4 key购买 nike

我正在使用数据注释验证 MVC 3 中的一个字段:

[StringLength(50, MinimumLength=5)]
public string MyText { get; set; }

有没有办法在那里提供动态值?像这样的东西:
[StringLength(50, MinimumLength=GetMinimumLengthValueFromDb())]
public string MyText { get; set; }

我的最后一招是使用远程验证器。如果我找不到方法来使用 StringLength , 我会用 RemoteValidator .

最佳答案

不,只能为属性提供编译时值,如常量。此限制适用于所有 C# 属性,并非特定于数据注释属性,而是适用于 StringLengthAttribute意味着有办法在运行时提供不同的长度。

您需要使用另一种验证方式,或者创建一个继承自 StringLengthAttribute 的自定义属性。接受 Type以及该类型的方法名称作为长度值的来源。这种方法类似于 CustomValidationAttribute 使用的方法。接受 ValidatorType和一个 Method名称作为验证来源。

关于asp.net-mvc - 是否可以在 MVC 3 中为 StringLength 验证器提供运行时值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8256400/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com