在mvc中使用带有错误消息的资源

时间:2013-07-30 07:12:47

标签: asp.net-mvc asp.net-mvc-4 resources

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

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

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

2 个答案:

答案 0 :(得分:48)

试试这个

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

 [Required(ErrorMessageResourceType = typeof(Resources.Resources),       
            ErrorMessageResourceName = "enterPassword")]
 public String Password { get; set; 

答案 1 :(得分:1)

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

    [Required(ErrorMessageResourceName = nameof(Resources.Global_Errors.ReqName),
 ErrorMessageResourceType = typeof(Resources.Global_Errors))]