using System; using System.Collections.Generic; using System.Linq; namespace AsbCloudApp.Exceptions; /// /// Argument validation fail Exception /// public class ArgumentInvalidException : Exception { /// /// словарь с ошибками, где ключ - имя аргумента, а значение - массив из одного сообщения /// public IDictionary ErrorState { get; } = null!; // TODO: swap arguments, inherit from ArgumentException /// /// конструктор /// /// /// public ArgumentInvalidException(string paramName, string message) : base(message) { ErrorState = new Dictionary() { { paramName, new[]{ message } } }; } /// /// конструктор /// /// /// public ArgumentInvalidException(string[] paramsNames, string message) : base(message) { ErrorState = paramsNames.ToDictionary(paramName => paramName, item => new[] { message }); } }