Files
I150/srcs/RobotNet10/RobotApp/Communication/RobotNet10.CANOpen/Models/ValidationResult.cs
2026-07-03 16:37:12 +07:00

30 lines
854 B
C#

namespace RobotNet10.CANOpen.Models;
/// <summary>
/// Validation result container
/// </summary>
public class ValidationResult
{
public bool IsValid { get; }
public IReadOnlyList<string> Errors { get; }
public ValidationResult(bool isValid, IEnumerable<string> errors)
{
IsValid = isValid;
Errors = errors.ToList().AsReadOnly();
}
public static ValidationResult Success() => new(true, Array.Empty<string>());
public static ValidationResult Failure(params string[] errors) => new(false, errors);
public static ValidationResult Failure(IEnumerable<string> errors) => new(false, errors);
public override string ToString()
{
if (IsValid)
return "Valid";
return $"Invalid: {string.Join(", ", Errors)}";
}
}