private static void AddValidationErrors(ModelStateEntry entry, string propertyName, Type resourceType, List <ModelStateViolation> violations)
 {
     foreach (ModelError error in entry.Errors)
     {
         var violation = new ModelStateViolation("/data/attributes/", propertyName, resourceType, error);
         violations.Add(violation);
     }
 }
        private static IEnumerable <Error> FromModelStateViolation(ModelStateViolation violation, bool includeExceptionStackTraceInErrors,
                                                                   NamingStrategy namingStrategy)
        {
            if (violation.Error.Exception is JsonApiException jsonApiException)
            {
                foreach (var error in jsonApiException.Errors)
                {
                    yield return(error);
                }
            }
            else
            {
                string attributeName = GetDisplayNameForProperty(violation.PropertyName, violation.ResourceType, namingStrategy);
                var    attributePath = violation.Prefix + attributeName;

                yield return(FromModelError(violation.Error, attributePath, includeExceptionStackTraceInErrors));
            }
        }