2
using System.Collections.Generic;
3
using ServiceStack.Common.Extensions;
5
namespace ServiceStack.Validation
8
/// Encapsulates a validation result.
10
public class ValidationErrorResult
12
public static ValidationErrorResult Success
16
return new ValidationErrorResult();
21
/// Gets or sets the success code.
23
/// <value>The success code.</value>
24
public string SuccessCode
31
/// Gets or sets the error code.
33
/// <value>The error code.</value>
34
public string ErrorCode
41
/// Gets or sets the success message.
43
/// <value>The success message.</value>
44
public string SuccessMessage { get; set; }
47
/// Gets or sets the error message.
49
/// <value>The error message.</value>
50
public string ErrorMessage { get; set; }
52
public virtual string Message
56
return Errors.Count > 0 ? ErrorMessage : SuccessMessage;
62
/// The errors generated by the validation.
64
public IList<ValidationErrorField> Errors
71
/// Returns True if the validation was successful (errors list is empty).
73
public virtual bool IsValid
77
return this.Errors.Count == 0;
82
/// Constructs a new ValidationResult
84
public ValidationErrorResult()
85
: this(new List<ValidationErrorField>())
90
/// Constructs a new ValidationResult
92
/// <param name="errors">A list of validation results</param>
93
public ValidationErrorResult(IList<ValidationErrorField> errors) : this(errors, null, null) { }
96
/// Initializes a new instance of the <see cref="ValidationErrorResult"/> class.
98
/// <param name="errors">The errors.</param>
99
/// <param name="successCode">The success code.</param>
100
/// <param name="errorCode">The error code.</param>
101
public ValidationErrorResult(IList<ValidationErrorField> errors, string successCode, string errorCode)
103
this.Errors = errors ?? new List<ValidationErrorField>();
104
if (successCode != null)
106
this.SuccessCode = successCode;
107
this.SuccessMessage = successCode.SplitCamelCase();
109
if (errorCode != null)
111
this.ErrorCode = errorCode;
115
if (this.Errors.Count > 0)
117
this.ErrorCode = this.Errors[0].ErrorCode;
118
this.ErrorMessage = this.Errors[0].ErrorMessage;
122
if (this.ErrorMessage == null && this.ErrorCode != null)
124
this.ErrorMessage = this.ErrorCode.ToEnglish();
b'\\ No newline at end of file'