Английская Википедия:Blazor

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Short description Шаблон:Distinguish Шаблон:Infobox software Blazor is a free and open-source web framework that enables developers to create interactive web user interfaces (UI) using C# and HTML.[1][2][3][4][5] It is being developed by Microsoft.

Overview

Six different editions of Blazor apps have been announced.

Blazor Server: These apps are hosted on an ASP.NET Core server process, with the UI defined using ASP.NET Razor syntax. Remote clients act as thin clients, meaning that the bulk of the processing load is on the server. The client's web browser downloads a small page and updates its UI over a WebSocket connection using SignalR. Blazor Server was released as a part of .NET Core 3.[6]

Blazor WebAssembly: Single-page apps that are downloaded to the client's web browser before running. The size of the download is larger than for Blazor Server, depends on the app, and the processing is entirely done on the client hardware. However, this app type enjoys rapid response time. As its name suggests, this client-side framework targets WebAssembly, as opposed to JavaScript (but they can be used together).[7]

Blazor PWA and Blazor Hybrid editions: The former supports progressive web apps (PWA). The latter is a platform-native framework (as opposed to a web framework) but still renders the user interface using web technologies (e.g. HTML and CSS).

Blazor Hybrid: Formerly known as Blazor Native,[6] this version of Blazor renders a user interface in a native platform-app using the underlying operating system's built-in HTML rendering engine.[8]

Blazor United: These apps will be a combination of both Blazor Server and Blazor WebAssembly and allow a "best of both worlds" solution where developers would be able to more finely tune the rendering mode. This approach would overcome the shortcomings of the potentially large up-front download that Blazor WebAssembly requires and the constantly open SignalR connection that Blazor Server requires. This version of Blazor is currently part of the .NET 8 roadmap and has not yet been released.[9]

Despite the confusion that the descriptions of ASP.NET and Blazor could generate, the latter focuses on the creation of web applications with the aim of using the C# programming language instead of the JavaScript language, which is commonly used in this type of application.[10]

With the release of .NET 5, Blazor has stopped working on Internet Explorer and the legacy version of Microsoft Edge.[11]

Example

The following example shows how to implement a simple counter that can be incremented by clicking a button:

<h1>Blazor code example</h1>
<p>count: @count</p>
<button @onclick="IncCount">Click to increment</button>

@code {
    private int count = 0;

    private void IncCount()
    {
        count++;
    }
}

See also

Шаблон:Portal

References

Шаблон:Reflist

Further reading

External links

Шаблон:Web frameworks Шаблон:Microsoft FOSS

Шаблон:Compu-prog-stub Шаблон:Free-software-stub Шаблон:Web-software-stub