/// <summary> /// 検証結果を追加する /// </summary> /// <param name="errors">エラー結果のリスト</param> /// <param name="context">検証コンテキスト</param> /// <param name="va">検証属性</param> /// <param name="value">検査対象の値</param> public static void AddErrors(this IList <ValidationResult> errors, ValidationContext context, ValidationAttribute va, object value) { va.SetupErrorMessageResource(); var result = va.GetValidationResult(value, context); if (result != ValidationResult.Success) { errors.Add(result); } }
/// <summary> /// 検証属性にメッセージリソースを設定する拡張メソッド /// </summary> /// <param name="va">検証属性</param> /// <param name="errMsgResourceType">エラーメッセージが設定されているリソースのType</param> public static void SetupErrorMessageResource(this ValidationAttribute va, Type errMsgResourceType) { va.SetupErrorMessageResource(errMsgResourceType, ValidationConfig.DefaultErrorMessageResourceNameProvider.Invoke(va)); }
/// <summary> /// 検証属性にメッセージリソースを設定する拡張メソッド /// </summary> /// <param name="va">検証属性</param> /// <param name="errMsgResourceType">エラーメッセージが設定されているリソースのType</param> /// <param name="errMsgResourceNameProvider">エラーメッセージリソース名を決定するFuncデリゲート</param> public static void SetupErrorMessageResource(this ValidationAttribute va, Type errMsgResourceType, Func <ValidationAttribute, string> errMsgResourceNameProvider) { va.SetupErrorMessageResource(errMsgResourceType, errMsgResourceNameProvider.Invoke(va)); }
/// <summary> /// 検証属性に既定のリソースを設定する拡張メソッド /// </summary> /// <param name="va">検証属性</param> public static void SetupErrorMessageResource(this ValidationAttribute va) { va.SetupErrorMessageResource( ValidationConfig.DefaultErrorMessageResourceTypeProvider, ValidationConfig.DefaultErrorMessageResourceNameProvider); }