Можно ли загрузить HTML-код страниц Blazor на стороне сервера до выполнения кода? ⇐ C#

Место общения программистов C#
Anonymous
Можно ли загрузить HTML-код страниц Blazor на стороне сервера до выполнения кода?

Сообщение Anonymous »

Раньше HTML-страница отображалась до/во время выполнения части «@code» страницы Blazor (сообщение «Загрузка...», которое находится в проекте по умолчанию) в клиентской реализации Blazor в .Net Ядро 2.2. Однако при использовании .NET Core 3.0 с Blazor на стороне сервера этого больше не происходит.

Например, страница с таблицей, которая извлекает данные из базы данных, по-прежнему будет загружать все остальные элементы на странице (заголовок, метки, заголовки таблиц и т. д.). ), но теперь страница загружается только ПОСЛЕ того, как все данные были извлечены из базы данных/операция в методе OnInitAsync завершена. Кроме того, пользователю не подается сигнал «загрузка» о том, что нажатие на страницу действительно что-то загружает. Им необходимо подождать 10–15 секунд для загрузки всех данных (без вращающегося курсора и подсказок).

Короче говоря, я хочу либо сделать так, чтобы пользователь знал, что страница загружается, но в идеале я бы хотел, чтобы HTML страниц отображался и все данные/операции который еще не завершен, появляется, когда он готов (как это работает в реализации на стороне клиента).

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

Код: Выделить всё

 a bunch of HTML 

@if (data == null)
{

Loading...

}

@code
{
Data[] data;
protected override async Task OnInitAsync()
{
data = await TaskService.GetDataAsync();
}
}
В приведенном выше примере ожидается наличие счетчика, показывающего, что данные загружаются, но происходит то, что страница вообще не загружается до тех пор, пока данные не будут фактически загружены. загружен (данные никогда не равны нулю), в котором все элементы появляются одновременно. Именно так работает реализация на стороне сервера?

Подробнее здесь: https://stackoverflow.com/questions/573 ... -is-execut

Вернуться в «C#»