2013-07-30 3 views
17

リソースからエラーメッセージを取得したいとします。私は以下のコードを試してみましたが、私はそのエラーを受け取ります: "属性の引数は、定数式、typeof式またはアトリビュートパラメータタイプの配列作成式でなければなりません"どうすればよいですか?mvcのエラーメッセージでリソースを使用する

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

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

が重複する可能性[私はDataAnnotationsとにErrorMessageなどのリソースを使用できないのはなぜ?](http://stackoverflow.com/questions/2688888/why-cant-i-use-resources-as-errormessage- ) – Liam

答えて

42

この

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

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

ようこそ@MerveKaya – Amit

+0

お気に入りの質問リストには+1してください) – FSou1

+0

asp.net mvcで動作させるにはErrorMessage = nullを追加する必要がありました5. Like: [Compare( "NewPassword"、ErrorMessageResourceType = typeof(Resources.ModelStateErrors.Index)、 ErrorMessageResourceName = "passworddonotmatch"、ErrorMessage = null)] public string ConfirmPassword {get;セット; } –

0

同様のアプローチが、それを動作させるためににErrorMessage =ヌルを追加する必要がありますするのに約@Ali Baigによる関連問題なくしてみてください。

[Required(ErrorMessageResourceName = nameof(Resources.Global_Errors.ReqName), 
ErrorMessageResourceType = typeof(Resources.Global_Errors))] 
関連する問題