【问题标题】:Using resources with error message in mvc在 mvc 中使用带有错误消息的资源
【发布时间】:2013-07-30 07:12:46
【问题描述】:

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

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

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

【问题讨论】:

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


【解决方案1】:

试试这个

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

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

【讨论】:

  • 我必须添加 ErrorMessage = null 才能使其与 asp.net mvc 5 一起使用。例如:[Compare("NewPassword", ErrorMessageResourceType = typeof (Resources.ModelStateErrors.Index), ErrorMessageResourceName = "passworddonotmatch ", ErrorMessage = null)] 公共字符串 ConfirmPassword { get;放; }
【解决方案2】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-10
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 2020-07-09
    • 2014-04-19
    • 2021-12-11
    相关资源
    最近更新 更多