Blazor
Blazor | |
---|---|
Тип | Фреймворк |
Автор | Microsoft |
Разработчики | .NET Foundation [1] |
Операционные системы | Linux, macOS, Windows |
Языки интерфейса | английский |
Первый выпуск | 2018 |
Лицензия | лицензия Apache |
Сайт | blazor.net |
Blazor — бесплатная веб-платформа с открытым исходным кодом, позволяющая разработчикам создавать веб-приложения с использованием C# и HTML[1][2][3][4][5][6]. Разрабатывается корпорацией Microsoft.
Приложение Blazor может взаимодействовать с JavaScript (причем оба они работают на стороне клиента), например, вызывать (повторно использовать) функции JavaScript из .NET методов[7].
Обзор
Анонсировано пять различных редакций приложений Blazor.
- Blazor Server: эти приложения размещаются на ASP.NET Core в ASP.NET Razor. Удаленные клиенты действуют как тонкие клиенты, а это означает, что основная нагрузка обработки ложится на сервер. Веб-браузер клиента загружает небольшую страницу и обновляет свой пользовательский интерфейс через соединение SignalR. Blazor Server был выпущен как часть .NET Core 3[8].
- Blazor WebAssembly: одностраничные приложения, которые перед запуском загружаются в веб-браузер клиента. Размер загрузки больше, чем для Blazor Server, зависит от приложения, а обработка полностью выполняется на клиентском оборудовании. Однако этот тип приложений отличается быстрым временем отклика. Как следует из названия, этот клиентский фреймворк написан на WebAssembly, а не на JavaScript (хотя их можно использовать вместе). Blazor WebAssembly 3.2.0 был выпущен 19 мая 2020 года[9].
Microsoft планирует выпустить выпуски Blazor PWA и Blazor Hybrid. Первый поддерживает прогрессивные веб-приложения (PWA). Последний представляет собой платформенный фреймворк, но по-прежнему отображает пользовательский интерфейс с использованием веб-технологий (например, HTML и CSS). Третий, Blazor Native — платформенный фреймворк, который визуализирует собственный пользовательский интерфейс платформы, также рассматривался, но еще не достиг стадии планирования.
Поддержка
Начиная с версии 5.0 Blazor прекращает поддержку некоторых устаревших веб-браузеров, таких как Microsoft Edge Legacy и Internet Explorer 11[10].
Пример кода
В следующем примере показано, как реализовать простой счетчик, который можно увеличивать нажатием кнопки:
<h1>Blazor code example</h1>
<p>count: @count</p>
<button class="btn btn-primary" @onclick="IncCount">Click to increment</button>
@code {
private int count = 0;
private void IncCount()
{
count++;
}
}
Примечания
- ↑ Strahl. Web Assembly and Blazor: Re-assembling the Web (31 июля 2018). Дата обращения: 22 октября 2018. Архивировано 22 октября 2018 года.
- ↑ Blazor: .NET in the Browser (англ.). Strumenta (4 сентября 2018). Дата обращения: 13 января 2022. Архивировано 22 октября 2018 года.
- ↑ Blazor University – Learn the new .NET SPA framework from Microsoft (англ.). Дата обращения: 13 января 2022. Архивировано 13 января 2022 года.
- ↑ James. Blazor .NET In The Browser (12 февраля 2018). Дата обращения: 23 октября 2018. Архивировано 23 октября 2018 года.
- ↑ kexugit. Web Development - C# in the Browser with Blazor (англ.). docs.microsoft.com. Дата обращения: 13 января 2022. Архивировано 22 октября 2018 года.
- ↑ Get started building .NET web apps that run in the browser with Blazor (англ.). .NET Blog (22 марта 2018). Дата обращения: 13 января 2022. Архивировано 13 января 2022 года.
- ↑ guardrex. Вызов функций JavaScript из методов .NET в ASP.NET Core Blazor (рус.). docs.microsoft.com. Дата обращения: 13 января 2022.
- ↑ Roth. Blazor Server in .NET Core 3.0 scenarios and performance . ASP.NET Blog. Microsoft (10 октября 2019). Дата обращения: 13 января 2022. Архивировано 13 января 2022 года.
- ↑ Blazor WebAssembly 3.2.0 now available (англ.). .NET Blog (19 мая 2020). Дата обращения: 13 января 2022. Архивировано 13 января 2022 года.
- ↑ (Discussion) Updated Blazor browser support for .NET 5 · Issue #26475 · dotnet/aspnetcore (англ.). GitHub. Дата обращения: 11 ноября 2020.
Ссылки
blazor.net — официальный сайт Blazor