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