Сервер Blazor OnInitializedAsync не ждет остановки

#blazor #blazor-server-side

Вопрос:

В настоящее время я создаю серверное приложение Blazor.

Компонент, используемый здесь, — это Радзен Блейзор.

Я хочу отображать диалоговое окно при отображении страницы (например, при вводе пароля) и получать результат.

Я подумал, что сначала следует проверить этот пароль, поэтому я написал код внутри OnInitializedAsync () для отображения диалогового окна.

Однако я использую await в диалоговом окне «ожидание».OpenAsync (messageTitle, dParam, DoPT);» часть кода», который вызывает диалоговое окно» ниже, но диалоговое окно не отображается, и код я буду двигаться дальше.

Когда я вызываю диалоговое окно где-нибудь, кроме OnInitializedAsync () для проверки (например, когда я нажимаю кнопку), ожидание работает, и отображается диалоговое окно.

Возможно, я не понимаю поведения асинхронной обработки и OnInitializedAsync, но почему асинхронная обработка, ожидающая вызова внутри OnInitializedAsync (), не работает?

—Код, использующий диалоговые окна—

 protected override async Task OnInitializedAsync() {   var passCheck = await base.PasswordDialogBox("Please enter your password", "Password");   if (passCheck)  {  //What to do if the password is correct  } }  

—Код, вызывающий диалоговое окно—

 protected async Tasklt;boolgt; PasswordDialogBox(string messageText, string messageTitle) {  var dParam = new Dictionarylt;string, objectgt;() { { "Message", messageText } };  var dOpt = new Radzen.DialogOptions() { Width = "500px", Height = "300px" };  // ↓not stop  var passCheck = await DialogService.OpenAsynclt;PasswordDialoggt;(messageTitle, dParam, dOpt);   if(passCheck == null)  {  passCheck = false;  }  return passCheck; }