Идентификатор ASP.NET Core 2.0 - сообщение об ошибке пароля не отображается

A StackOverflowError - ошибка времени выполнения в java.

Он вызывается, когда количество памяти стека вызовов распределено JVM.

Обычный случай, когда a StackOverflowError выбрасывается, когда стек вызовов превышает из-за чрезмерной глубокой или бесконечной рекурсии.

Пример:

public class Factorial {
    public static int factorial(int n){
        if(n == 1){
            return 1;
        }
        else{
            return n * factorial(n-1);
        }
    }

    public static void main(String[] args){
        System.out.println("Main method started");
        int result = Factorial.factorial(-1);
        System.out.println("Factorial ==>"+result);
        System.out.println("Main method ended");
    }
}

Трассировка стека:

Main method started
Exception in thread "main" java.lang.StackOverflowError
at com.program.stackoverflow.Factorial.factorial(Factorial.java:9)
at com.program.stackoverflow.Factorial.factorial(Factorial.java:9)
at com.program.stackoverflow.Factorial.factorial(Factorial.java:9)

В приведенном выше случае можно избежать программных изменений. Но если логика программы правильная, и все же это происходит, тогда размер стека должен быть увеличен.

0
задан Help123 13 July 2018 в 21:02
поделиться

1 ответ

Я не могу легко проверить это (нет компилятора / vs под рукой), но вы можете попытаться добавить ошибку модели явным образом, прежде чем снова отобразить представление

if (result.Succeeded)
{
    return RedirectToAction("Index", "Home");
}
else
{
    var error = string.Join( ", ", result.Errors );

    this.ModelState.AddModelError( "Password", error );
}
1
ответ дан Wiktor Zychla 17 August 2018 в 12:15
поделиться
  • 1
    Такие работы. Это дает мне ниже значений. Он получает ошибки, но не фактическое значение ошибок. Microsoft.AspNetCore.Identity.IdentityError, Microsoft.AspNetCore.Identity.IdentityError, Microsoft.AspNetCore.Identity.IdentityError, Microsoft.AspNetCore.Identity.IdentityError – Help123 13 July 2018 в 20:40
  • 2
    Мне удалось получить описание, но теперь я столкнулся с проблемой, правильно отображая сообщения об ошибках. Если вы посмотрите на мой обновленный код, я могу описать его. Но кажется, что если я просто передаю несколько сообщений об ошибках, он потянет только первый. Есть ли способ показать их все? – Help123 13 July 2018 в 20:56
  • 3
    Просто string.Join описания, как и я. – Wiktor Zychla 14 July 2018 в 08:33
Другие вопросы по тегам:

Похожие вопросы: