classlib/ExpenseTracker.Application/Common/Exceptions/ValidationException.cs
2024-08-07 21:12:02 +03:00

23 lines
612 B
C#

using FluentValidation.Results;
namespace ExpenseTracker.Application.Common.Exceptions;
public class ValidationException : Exception
{
public ValidationException()
: base("One or more validation failures have occurred.")
{
Errors = new Dictionary<string, string[]>();
}
public ValidationException(IEnumerable<ValidationFailure> failures)
: this()
{
Errors = failures
.GroupBy(f => f.PropertyName, f => f.ErrorMessage)
.ToDictionary(fg => fg.Key, fg => fg.ToArray());
}
public IDictionary<string, string[]> Errors { get; }
}