22

我想从资源中获取错误消息。当我尝试下面的代码时,我发现错误:“属性参数必须是属性参数类型的常量表达式、typeof 表达式或数组创建表达式”我该怎么办?

public class UserLoginModel
{
     [Required(ErrorMessage =Resources.PageResources.enterYourEmail)]
     public String Email{ get; set; }

     [Required(ErrorMessage =Resources.PageResources.enterPassword)]
     public String Password { get; set; 
}
4

2 回答 2

51

尝试这个

 [Required(ErrorMessageResourceType = typeof(Resources.Resources),       
            ErrorMessageResourceName = "enterYourEmail")]
 public String Email{ get; set; }

 [Required(ErrorMessageResourceType = typeof(Resources.Resources),       
            ErrorMessageResourceName = "enterPassword")]
 public String Password { get; set; 
于 2013-07-30T07:24:45.270 回答
3

一种类似的方法,但没有 @Ali Baig 相关的问题,必须添加 ErrorMessage = null 才能使其工作。

    [Required(ErrorMessageResourceName = nameof(Resources.Global_Errors.ReqName),
 ErrorMessageResourceType = typeof(Resources.Global_Errors))]
于 2017-05-31T11:20:34.877 回答