ModelStateDictionaryExtensions.cs 566 B

1234567891011121314151617
  1. using Microsoft.AspNetCore.Mvc.ModelBinding;
  2. namespace SharedKernel.Extensions;
  3. public static class ModelStateDictionaryExtensions
  4. {
  5. public static string GetErrorMessages(this ModelStateDictionary modelState, string separator = "\n")
  6. {
  7. var errors = modelState
  8. .Where(kvp => kvp.Value?.Errors.Count > 0)
  9. .SelectMany(kvp => kvp.Value!.Errors)
  10. .Select(e => string.IsNullOrWhiteSpace(e.ErrorMessage) ? "Invalid value." : e.ErrorMessage)
  11. .ToArray();
  12. return string.Join(separator, errors);
  13. }
  14. }