.NET Разработчик
6.58K subscribers
446 photos
4 videos
14 files
2.14K links
Дневник сертифицированного .NET разработчика. Заметки, советы, новости из мира .NET и C#.

Для связи: @SBenzenko

Поддержать канал:
- https://boosty.to/netdeveloperdiary
- https://patreon.com/user?u=52551826
- https://pay.cloudtips.ru/p/70df3b3b
Download Telegram
День 2081. #BlazorBasics
Основы Blazor. Разбираем Шаблон Проекта Веб-Приложения Blazor. Окончание

1. Основы режимов рендеринга
2. Базовая конфигурация
3. Параметр интерактивности Server
4. Параметр интерактивности WebAssembly

Параметр интерактивности Auto
Автоматическая интерактивная визуализация (см. картинку) будет использовать сервер или WebAssembly для интерактивности в зависимости от ресурсов, доступных на клиенте. Выбор параметра Auto (Server и WebAssembly) даст практически идентичные результаты, как и для интерактивности WebAssembly с соответствующими параметрами Global или Per Page/Component. Основные различия заключаются в файле Program.cs и использовании атрибутов rendermode в компонентах.

В серверном проекте файл Program.cs будет вызывать методы для активации интерактивности как WebAssembly, так и Server. Режимы визуализации приложения также настраиваются с помощью методов AddInteractiveWebAssemblyRenderMode и AddInteractiveServerRenderMode. Метод AddAdditionalAssemblies находит компоненты в клиентском приложении, создавая ссылку на серверное приложение.
```csharp
builder.Services.AddRazorComponents()
.AddInteractiveServerComponents()
.AddInteractiveWebAssemblyComponents();

app.MapRazorComponents<App>()
.AddInteractiveServerRenderMode()
.AddInteractiveWebAssemblyRenderMode()
.AddAdditionalAssemblies(typeof(Counter).Assembly);
``
При выборе опции Global к экземпляру компонента Routes в App.razor применяется атрибут InteractiveAuto. Поскольку режим устанавливается на корневом уровне приложения, все компоненты для этой настройки будут сгенерированы в проекте Client.
Для опции Per Page/Component атрибут InteractiveAuto отображается только в компоненте Counter. Все остальные компоненты используют статическую серверную визуализацию и генерируются в проекте Server.

Автоматический рендеринг обеспечивает баланс между серверным и WebAsembly режимами. Эта конфигурация подходит для приложений, которым может потребоваться оптимизировать начальное время загрузки приложения.

Примечание о параметре Authentication type (Тип аутентификации)
Параметр создаёт все файлы, необходимые для аутентификации пользователей и управления профилями пользователей. Для получения дополнительной информации по этой теме обратитесь к официальной документации.

Итого
Начало нового проекта Blazor в .NET 8 может показаться сложным на первый взгляд из-за обширного списка шаблонов и параметров. Шаблон Blazor Web App — лучшее решение для приложений Blazor, которые могут использовать статический рендеринг сервера (не PWA и не приложения Blazor Hybrid). Шаблон Blazor Web App объединяет все конфигурации Blazor в одну, предоставляя при этом несколько вариантов для выбора правильной отправной точки. Знание того, какие возможности требуются вашему приложению, определит, какие параметры следует выбрать, но в любом случае Blazor можно перенастроить вручную в любое время, если возникнут новые требования.

Источник: https://www.telerik.com/blogs/unified-blazor-web-app-project-template-fully-explained
👍6