gpt4 book ai didi

c# - 为什么我不能将资源用作带有 DataAnnotations 的 ErrorMessage?

转载 作者:可可西里 更新时间:2023-11-01 03:03:58 26 4
gpt4 key购买 nike

为什么我不能这样做?

[Required(ErrorMessage = "*")]
[RegularExpression("^[a-zA-Z0-9_]*$", ErrorMessage = Resources.RegistrationModel.UsernameError)]
public string Username { get; set; }

错误消息告诉我什么?

An attribute argument must be a constant expression , typeof expression or array creation expression of an attribute parameter type.

最佳答案

当您使用 ErrorMessage 属性时,只能为其分配常量字符串或字符串文字。

改为使用 ErrorMessageResourceTypeErrorMessageResourceName 指定您的资源。

[RegularExpression(
"^[a-zA-Z0-9_]*$",
ErrorMessageResourceType=typeof(Resources.RegistrationModel),
ErrorMessageResourceName= "UsernameError"
)]

注意资源必须是public(可以在资源编辑器中设置)。

Setting resource access to public

关于c# - 为什么我不能将资源用作带有 DataAnnotations 的 ErrorMessage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2688888/

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