コード例 #1
0
 public static ValueChecker <T> Condition <T>(this ValueChecker <T> checker, Func <T, bool> validCondition, string description)
 {
     if (checker.CanContinue() && (validCondition != null && !validCondition.Invoke(checker.Value)))
     {
         checker.Result.AppendError(checker.Context, description);
     }
     return(checker);
 }
コード例 #2
0
ファイル: RequiredExtensions.cs プロジェクト: dogcane/Resulz
 public static ValueChecker <string> Required(this ValueChecker <string> checker, string message)
 {
     if (checker.CanContinue() && (string.IsNullOrEmpty(checker.Value as string)))
     {
         checker.Result.AppendError(checker.Context, message);
     }
     return(checker);
 }
コード例 #3
0
 public static ValueChecker <T> GreaterThenOrEqual <T>(this ValueChecker <T> checker, T value, string description) where T : IComparable <T>
 {
     if (checker.CanContinue() && (Comparer.Default.Compare(checker.Value, value) < 0))
     {
         checker.Result.AppendError(checker.Context, description);
     }
     return(checker);
 }
コード例 #4
0
 public static ValueChecker <string> StringLength(this ValueChecker <string> checker, int maxLength, string message)
 {
     if (checker.CanContinue() && (checker.Value != null && checker.Value.Length > maxLength))
     {
         checker.Result.AppendError(checker.Context, message);
     }
     return(checker);
 }
コード例 #5
0
ファイル: RequiredExtensions.cs プロジェクト: dogcane/Resulz
 public static ValueChecker <T> Required <T>(this ValueChecker <T> checker, string message)
 {
     if (checker.CanContinue() && (((object)checker.Value) == null))
     {
         checker.Result.AppendError(checker.Context, message);
     }
     return(checker);
 }
コード例 #6
0
ファイル: IntoExtensions.cs プロジェクト: dogcane/Resulz
 public static ValueChecker <T> Into <T>(this ValueChecker <T> checker, T[] arguments, string description)
 {
     if (checker.CanContinue() && (arguments == null || arguments.Length == 0 || !arguments.Contains(checker.Value)))
     {
         checker.Result.AppendError(checker.Context, description);
     }
     return(checker);
 }
コード例 #7
0
 public static ValueChecker <string> StringMatch(this ValueChecker <string> checker, string regEx, RegexOptions regExOptions, string message)
 {
     if (checker.CanContinue() && (!Regex.IsMatch(checker.Value ?? string.Empty, regEx, regExOptions)))
     {
         checker.Result.AppendError(checker.Context, message);
     }
     return(checker);
 }
コード例 #8
0
 public static ValueChecker <string> EqualTo(this ValueChecker <string> checker, string value, StringComparison comparisonType, string message)
 {
     if (checker.CanContinue() && (!string.Equals(checker.Value, value, comparisonType)))
     {
         checker.Result.AppendError(checker.Context, message);
     }
     return(checker);
 }
コード例 #9
0
 public static ValueChecker <T> EqualTo <T>(this ValueChecker <T> checker, T value, string message) where T : IEquatable <T>
 {
     if (checker.CanContinue() && (!object.Equals(checker.Value, value)))
     {
         checker.Result.AppendError(checker.Context, message);
     }
     return(checker);
 }
コード例 #10
0
ファイル: BetweenExtensions.cs プロジェクト: dogcane/Resulz
 public static ValueChecker <T> Between <T>(this ValueChecker <T> checker, T firstValue, T secondValue, string description) where T : IComparable <T>
 {
     if (checker.CanContinue() && (Comparer.Default.Compare(checker.Value, firstValue) <= 0 || Comparer.Default.Compare(checker.Value, secondValue) >= 0))
     {
         checker.Result.AppendError(checker.Context, description);
     }
     return(checker);
 }