【问题标题】:How can I get all Validation Errors?如何获取所有验证错误?
【发布时间】:2015-08-09 02:15:51
【问题描述】:

我想获取所有验证错误。

我可以在 DbEntityValidationException 中得到错误吗?

DbEntityValidationException ex = exception as DbEntityValidationException

【问题讨论】:

标签: entity-framework validationerror


【解决方案1】:
public static string GetAllExceptionTree(Exception exception)
    {
        if (exception is DbEntityValidationException)
        {
            StringBuilder validationErrors = new StringBuilder();
            DbEntityValidationException ex = exception as DbEntityValidationException;
            foreach (var error in ex.EntityValidationErrors)
                foreach (var err in error.ValidationErrors)
                    validationErrors.Append(String.Format("{0}<br/>", err.ErrorMessage));

            return validationErrors.ToString();
        }

        StringBuilder sb = new StringBuilder();
        do
        {
            if (sb.Length != 0)
                sb.Append("...");
            sb.Append(exception.Message);
            exception = exception.InnerException;
        } while (exception != null);

        return sb.ToString();
    }

【讨论】:

    猜你喜欢
    • 2010-12-25
    • 2018-08-05
    • 2017-04-02
    • 1970-01-01
    • 1970-01-01
    • 2021-06-19
    • 2014-05-21
    • 2011-03-10
    • 2016-05-10
    相关资源
    最近更新 更多