gpt4 book ai didi

c# - 具有可配置值的 DataAnnotation?

转载 作者:太空狗 更新时间:2023-10-29 21:35:58 26 4
gpt4 key购买 nike

我想将 View 模型上的 DataAnnotation 设置为可通过 web.config 配置的动态值。在下面的示例中,我收到此错误“属性参数必须是属性参数类型的常量表达式、typeof 表达式或数组创建表达式”。有人知道这是否可能吗?谢谢

[DataType(DataType.Password)]
[RegularExpression(Properties.Settings.Default.PasswordExpression)]
public string Password { get; set; }

最佳答案

属性参数必须是常量,即其值可以在编译时解析的东西。但是您可以编写自己的简单属性类,它采用 appSettings 中项目的名称,获取基础值,并将其传递给正常的 RegularExpression 处理。那么您的属性将如下所示:

[ConfigedRegularExpression("PasswordExpression")]

其中 PasswordExpression 是包含实际正则表达式字符串的应用设置的名称。

并且,在写完这篇文章并进行搜索后(我应该先这样做),我看到有人在这里为您解决了这个问题:

How to write custom RegularExpressionValidator which takes the values from the config file?

关于c# - 具有可配置值的 DataAnnotation?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7438563/

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