using System; namespace AsbCloudApp.Exceptions { /// /// Argument validation fail Exception /// public class ArgumentInvalidException : Exception { /// /// название аргумента /// public string ParamName { get; } /// /// конструктор /// /// /// public ArgumentInvalidException(string message, string paramName = default) : base(message) { ParamName = paramName; } /// /// преобразование в объект валидации /// /// public object ToValaidationErrorObject() => MakeValidationError(ParamName, Message); /// /// фабрика объекта валидации /// /// /// /// public static object MakeValidationError(string paramName, params string[] errors) => new { name = paramName, errors, }; } }