Úvod do ASP.NET Core Blazor

Vítá vás Blazor !

Blazorje rozhraní pro vytváření interaktivního webového uživatelského rozhraní na straně klienta pomocí rozhraní .NET:

  • Vytvářejte bohaté interaktivní UI pomocí jazyka C# místo JavaScriptu.
  • Sdílejte logiku aplikace na straně serveru a klienta napsané v .NET.
  • Vykreslte uživatelské rozhraní jako HTML a CSS pro širokou podporu prohlížeče, včetně mobilních prohlížečů.
  • Integrace s moderními hostitelskými platformami, jako je Docker

Použití .NET pro vývoj webu na straně klienta nabízí následující výhody:

  • Pište kód v jazyce C# místo JavaScriptu.
  • Využití stávajícího ekosystému .NET knihoven .NET
  • Sdílení logiky aplikace napříč serverem a klientem
  • Využijte výhod . Výkon, spolehlivost a zabezpečení technologie NET.
  • Zůstaňte produktivní díky Visual Studio v Windows, Linuxu a macOS.
  • Využijte společnou sadu jazyků, architektur a nástrojů, které jsou stabilní, mají bohaté funkce a snadno se používají.

Komponenty

Blazor Aplikace jsou založené na komponentách. Komponenta v Blazor je prvek uživatelského rozhraní, jako je například stránka, dialogové okno nebo formulář pro zadávání dat.

Komponenty jsou třídy .NET jazyka C# integrované do sestavení .NET, které:

  • Definování flexibilní logiky vykreslování uživatelského rozhraní
  • Zpracování událostí uživatele
  • Lze je vnořit a znovu použít.
  • Lze sdílet a distribuovat jako Razor knihovny tříd nebo NuGet balíčky.

Třída komponenty je obvykle zapsána ve formě stránky Razor s kódem s .razor příponou souboru. Komponenty v Blazor jsou formálně označovány jako Razor komponenty. Razor je syntaxe pro kombinování značek HTML s kódem jazyka C# určeným pro produktivitu vývojářů. Razorumožňuje přepínat mezi značkami HTML a C# ve stejném souboru s podporou programování IntelliSense v Visual Studio. Razor Pages a MVC také používají Razor . Na rozdíl od Pages a MVC, které jsou postavené na modelu požadavků a odpovědí, se komponenty používají speciálně pro logiku a složení uživatelského rozhraní Razor na straně klienta.

Blazor používá ke kompozici uživatelského rozhraní přirozené značky HTML. Následující kód ukazuje komponentu ( ), která zobrazí dialogové okno a zpracuje událost, když uživatel Razor Dialog.razor vybere tlačítko:

<div class="card" style="width:22rem">
    <div class="card-body">
        <h3 class="card-title">@Title</h3>
        <p class="card-text">@ChildContent</p>
        <button @onclick="OnYes">Yes!</button>
    </div>
</div>

@code {
    [Parameter]
    public RenderFragment ChildContent { get; set; }

    [Parameter]
    public string Title { get; set; }

    private void OnYes()
    {
        Console.WriteLine("Write to the console in C#! 'Yes' button selected.");
    }
}

V předchozím příkladu OnYes je metoda jazyka C# aktivované událostí onclick tlačítka. Text dialogového okna ( ) a název ( ) poskytuje následující komponenta, která tuto komponentu ChildContent Title používá ve svém uživatelském rozhraní.

Komponenta Dialog je vnořená do jiné komponenty pomocí značky HTML. V následujícím příkladu Index používá komponenta ( Pages/Index.razor ) předchozí Dialog komponentu. Atribut značky Title předá hodnotu názvu vlastnosti Dialog Title komponenty. Text Dialog komponenty ( ChildContent ) se nastavuje podle obsahu <Dialog> elementu. Když je Dialog komponenta přidána do Index komponenty, technologie IntelliSense v Visual Studio urychluje vývoj pomocí syntaxe a dokončování parametrů.

@page "/"

<h1>Hello, world!</h1>

<p>
    Welcome to your new app.
</p>

<Dialog Title="Learn More">
    Do you want to <i>learn more</i> about Blazor?
</Dialog>

Dialogové okno se vykreslí při Index přístupu ke komponentě v prohlížeči. Když uživatel vybere tlačítko, v konzole vývojářských nástrojů prohlížeče se zobrazí zpráva zapsaná OnYes metodou :

Komponenta dialogového okna vykreslená v prohlížeči vnořeném uvnitř komponenty Index. Konzola vývojářských nástrojů prohlížeče zobrazí zprávu zapsané kódem jazyka C#, když uživatel vybere Ano! v uživatelském rozhraní.

Komponenty se vykreslují do reprezentace modelu DOM (model DOM (Document Object Model)) prohlížeče v paměti, který se nazývá strom vykreslování a který slouží k flexibilní a efektivní aktualizaci uživatelského rozhraní.

Blazor WebAssembly

Blazor WebAssembly je jedno stránková aplikace (SPA) pro vytváření interaktivních klientských webových aplikací pomocí .NET. Blazor WebAssembly používá otevřené webové standardy bez modulů plug-in nebo překompilení kódu do jiných jazyků. Blazor WebAssembly funguje ve všech moderních webových prohlížečích, včetně mobilních prohlížečů.

Spouštění kódu .NET ve webových prohlížečích umožňuje WebAssembly (zkráceně wasm ). WebAssembly je kompaktní formát bytecode optimalizovaný pro rychlé stahování a maximální rychlost provádění. WebAssembly je otevřený webový standard podporovaný ve webových prohlížečích bez modulů plug-in.

Kód WebAssembly má přístup k plným funkcím prohlížeče prostřednictvím JavaScriptu, který se nazývá interoperabilita JavaScriptu a často se zkracuje na interoperabilitu JavaScriptu nebo interoperabilitu JS. Kód .NET spuštěný prostřednictvím WebAssembly v prohlížeči běží v sandboxu JavaScriptu prohlížeče s ochranou, kterou sandbox poskytuje před škodlivými akcemi na klientském počítači.

Blazor WebAssembly spustí kód .NET v prohlížeči pomocí WebAssembly.

Když je Blazor WebAssembly aplikace sestavená a spuštěná v prohlížeči:

  • Soubory kódu jazyka C# Razor a soubory jsou zkompilovány do sestavení .NET.
  • Sestavení a modul runtime .NET se stáhnou do prohlížeče.
  • Blazor WebAssembly Bootstrap spustí modul runtime .NET a nakonfiguruje modul runtime tak, aby načítá sestavení pro aplikaci. Modul Blazor WebAssembly runtime používá interoperabilitu JavaScriptu ke zpracování volání rozhraní API pro manipulaci s objekty DOM a rozhraní API prohlížeče.

Velikost publikované aplikace, její velikost datové části, je důležitým faktorem výkonu pro použitelnost aplikace. Stažení velké aplikace do prohlížeče trvá poměrně dlouho, což snižuje uživatelské prostředí. Blazor WebAssembly optimalizuje velikost datové části, aby se zkrátily časy stahování:

  • Nepoužívaný kód se z aplikace vyjme, když ho publikuje ořízovač jazyka IL (Intermediate Language).
  • Odpovědi HTTP jsou komprimované.
  • Modul runtime a sestavení .NET jsou uloženy v mezipaměti v prohlížeči.

Blazor Server

Blazor oddělení logiky vykreslování komponent od způsobu použití aktualizací uživatelského rozhraní. Blazor Server poskytuje podporu pro Razor hostování komponent na serveru v ASP.NET Core aplikaci. Aktualizace uživatelského rozhraní se zpracovávají přes SignalR připojení.

Modul runtime zůstává na serveru a zpracovává:

  • Spuštění kódu C# aplikace
  • Odesílání událostí uživatelského rozhraní z prohlížeče na server.
  • Použití aktualizací uživatelského rozhraní na vykreslenou komponentu, která je odeslána zpět serverem.

Připojení, které používá Blazor Server ke komunikaci s prohlížečem, se používá také ke zpracování volání zprostředkovatele komunikace JavaScriptu.

Blazor Server spustí na serveru kód .NET a komunikuje s model DOM (Document Object Model) na klientovi přes připojení SignalR

Interoperabilita JavaScriptu

U aplikací, které vyžadují javascriptové knihovny třetích stran a přístup k rozhraním API prohlížeče, komponenty vzájemně spolupracuje s JavaScriptem. Komponenty jsou schopné používat jakoukoli knihovnu nebo rozhraní API, které JavaScript dokáže použít. Kód jazyka C# může volat kód Jazyka JavaScripta kód jazyka JavaScript může volat kód jazyka C#.

Sdílení a .NET Standard kódu

Blazor implementuje .NET Standard ,který umožňuje projektům odkazovat na knihovny, Blazor které odpovídají .NET Standard specifikacím. .NET Standard je formální specifikace rozhraní .NET API, která jsou společná napříč implementacemi .NET. .NET Standard tříd lze sdílet napříč různými platformami .NET, jako jsou Blazor , .NET Framework, .NET Core, Xamarin, Mono a Unity.

Rozhraní API, která nelze použít ve webovém prohlížeči (například přístup k systému souborů, otevření soketu a threading), vyvolat PlatformNotSupportedException výjimku .

Další zdroje informací

Vítá vás Blazor !

Blazorje rozhraní pro vytváření interaktivního webového uživatelského rozhraní na straně klienta pomocí rozhraní .NET:

  • Vytvářejte bohaté interaktivní UI pomocí jazyka C# místo JavaScriptu.
  • Sdílejte logiku aplikace na straně serveru a klienta napsané v .NET.
  • Vykreslte uživatelské rozhraní jako HTML a CSS pro širokou podporu prohlížeče, včetně mobilních prohlížečů.
  • Integrace s moderními hostitelskými platformami, jako je Docker

Použití .NET pro vývoj webu na straně klienta nabízí následující výhody:

  • Pište kód v jazyce C# místo JavaScriptu.
  • Využití stávajícího ekosystému .NET knihoven .NET
  • Sdílení logiky aplikace napříč serverem a klientem
  • Využijte výhod . Výkon, spolehlivost a zabezpečení technologie NET.
  • Zůstaňte produktivní díky Visual Studio v Windows, Linuxu a macOS.
  • Využijte společnou sadu jazyků, architektur a nástrojů, které jsou stabilní, mají bohaté funkce a snadno se používají.

Komponenty

Blazor Aplikace jsou založené na komponentách. Komponenta v Blazor aplikaci je část uživatelského rozhraní, například stránka, dialogové okno nebo formulář pro zadávání dat.

Komponenty jsou třídy .NET jazyka C# integrované do sestavení .NET, které:

  • Definování flexibilní logiky vykreslování uživatelského rozhraní
  • Zpracování událostí uživatele
  • Lze je vnořit a znovu použít.
  • Lze sdílet a distribuovat jako Razor knihovny tříd nebo NuGet balíčky.

Třída komponenty je obvykle zapsána ve formě stránky Razor s kódem s .razor příponou souboru. Komponenty v Blazor systému jsou formálně označovány jako Razor komponenty. Razor je syntaxe pro kombinování značek HTML s kódem jazyka C# určeným pro produktivitu vývojářů. Razorumožňuje přepínat mezi značkami HTML a C# ve stejném souboru s podporou programování IntelliSense v Visual Studio. Razor Pages a MVC také používají Razor . Na rozdíl od Pages a MVC, které jsou postavené na modelu požadavků a odpovědí, se komponenty používají speciálně pro logiku a složení uživatelského rozhraní Razor na straně klienta.

Blazor používá ke kompozici uživatelského rozhraní přirozené značky HTML. Následující kód ukazuje komponentu ( ), která zobrazí dialogové okno a zpracuje událost, když uživatel Razor Dialog.razor vybere tlačítko:

<div class="card" style="width:22rem">
    <div class="card-body">
        <h3 class="card-title">@Title</h3>
        <p class="card-text">@ChildContent</p>
        <button @onclick="OnYes">Yes!</button>
    </div>
</div>

@code {
    [Parameter]
    public RenderFragment ChildContent { get; set; }

    [Parameter]
    public string Title { get; set; }

    private void OnYes()
    {
        Console.WriteLine("Write to the console in C#! 'Yes' button selected.");
    }
}

V předchozím příkladu OnYes je metoda jazyka C# aktivované událostí onclick tlačítka. Text dialogového okna ( ) a název ( ) poskytuje následující ChildContent Title komponenta, která tuto komponentu používá ve svém uživatelském rozhraní.

Komponenta Dialog je vnořená do jiné komponenty pomocí značky HTML. V následujícím příkladu Index používá komponenta ( Pages/Index.razor ) předchozí Dialog komponentu. Atribut značky Title předá hodnotu názvu vlastnosti Dialog Title komponenty. Text Dialog komponenty ( ChildContent ) je nastaven <Dialog> obsahem obsahu elementu. Když je Dialog komponenta přidána do Index komponenty, technologie IntelliSense v Visual Studio urychluje vývoj pomocí syntaxe a dokončování parametrů.

@page "/"

<h1>Hello, world!</h1>

<p>
    Welcome to your new app.
</p>

<Dialog Title="Learn More">
    Do you want to <i>learn more</i> about Blazor?
</Dialog>

Dialogové okno se vykreslí při Index přístupu k komponentě v prohlížeči. Když uživatel vybere tlačítko, v konzole vývojářských nástrojů prohlížeče se zobrazí zpráva zapsaná OnYes metodou :

Komponenta dialogového okna vykreslená v prohlížeči vnořeném uvnitř komponenty Index. Konzola vývojářských nástrojů prohlížeče zobrazí zprávu zapsané kódem jazyka C#, když uživatel vybere Ano! v uživatelském rozhraní.

Komponenty se vykreslují do reprezentace modelu dom (model DOM (Document Object Model)) prohlížeče v paměti nazývaného render tree (vykreslený strom), který slouží k flexibilní a efektivní aktualizaci uživatelského rozhraní.

Blazor WebAssembly

Blazor WebAssembly je jedno stránková aplikace (SPA) pro vytváření interaktivních klientských webových aplikací pomocí .NET. Blazor WebAssembly používá otevřené webové standardy bez modulů plug-in nebo překompilení kódu do jiných jazyků. Blazor WebAssembly funguje ve všech moderních webových prohlížečích, včetně mobilních prohlížečů.

Spouštění kódu .NET ve webových prohlížečích umožňuje WebAssembly (zkráceně wasm ). WebAssembly je kompaktní formát bytecode optimalizovaný pro rychlé stahování a maximální rychlost provádění. WebAssembly je otevřený webový standard podporovaný ve webových prohlížečích bez modulů plug-in.

Kód WebAssembly má přístup k plným funkcím prohlížeče prostřednictvím JavaScriptu, který se nazývá interoperabilita JavaScriptu, často zkrácený na interoperabilitu JavaScriptu nebo interoperabilitu JS. Kód .NET spuštěný prostřednictvím WebAssembly v prohlížeči běží v sandboxu JavaScriptu prohlížeče s ochranou, kterou sandbox poskytuje proti škodlivým akcím na klientském počítači.

Blazor WebAssembly spustí kód .NET v prohlížeči pomocí WebAssembly.

Když je Blazor WebAssembly aplikace sestavená a spuštěná v prohlížeči:

  • Soubory kódu jazyka C# Razor a soubory jsou zkompilovány do sestavení .NET.
  • Sestavení a modul runtime .NET se stáhnou do prohlížeče.
  • Blazor WebAssembly Bootstrap spustí modul runtime .NET a nakonfiguruje modul runtime tak, aby načítá sestavení pro aplikaci. Modul Blazor WebAssembly runtime používá interoperabilitu JavaScriptu ke zpracování volání rozhraní API pro manipulaci s objekty DOM a rozhraní API prohlížeče.

Velikost publikované aplikace, její velikost datové části, je důležitým faktorem výkonu pro použitelnost aplikace. Stažení velké aplikace do prohlížeče trvá poměrně dlouho, což snižuje uživatelské prostředí. Blazor WebAssembly optimalizuje velikost datové části, aby se zkrátily časy stahování:

  • Nepoužívaný kód se z aplikace vyjme, když ho publikuje ořízovač jazyka IL (Intermediate Language).
  • Odpovědi HTTP jsou komprimované.
  • Modul runtime a sestavení .NET jsou uloženy v mezipaměti v prohlížeči.

Blazor Server

Blazor oddělení logiky vykreslování komponent od způsobu použití aktualizací uživatelského rozhraní. Blazor Server poskytuje podporu pro Razor hostování komponent na serveru v ASP.NET Core aplikaci. Aktualizace uživatelského rozhraní se zpracovávají přes SignalR připojení.

Modul runtime zůstává na serveru a zpracovává:

  • Spuštění kódu C# aplikace
  • Odesílání událostí uživatelského rozhraní z prohlížeče na server.
  • Použití aktualizací uživatelského rozhraní na vykreslenou komponentu, která je odeslána zpět serverem.

Připojení, které používá Blazor Server ke komunikaci s prohlížečem, se používá také ke zpracování volání zprostředkovatele komunikace JavaScriptu.

Blazor Server spustí na serveru kód .NET a komunikuje s model DOM (Document Object Model) na klientovi přes připojení SignalR

Interoperabilita JavaScriptu

U aplikací, které vyžadují javascriptové knihovny třetích stran a přístup k rozhraním API prohlížeče, komponenty vzájemně spolupracuje s JavaScriptem. Komponenty jsou schopné používat jakoukoli knihovnu nebo rozhraní API, které JavaScript dokáže použít. Kód jazyka C# může volat kód Jazyka JavaScripta kód jazyka JavaScript může volat kód jazyka C#.

Sdílení a .NET Standard kódu

Blazor implementuje rozhraní .NET Standard, které umožňuje projektům odkazovat na knihovny, Blazor které odpovídají .NET Standard specifikacím. .NET Standard je formální specifikace rozhraní .NET API, která jsou společná napříč implementacemi .NET. .NET Standard tříd lze sdílet napříč různými platformami .NET, jako jsou Blazor , .NET Framework, .NET Core, Xamarin, Mono a Unity.

Rozhraní API, která nelze použít ve webovém prohlížeči (například přístup k systému souborů, otevření soketu a threading), vyvolat PlatformNotSupportedException výjimku .

Další zdroje informací

Vítá vás Blazor !

Blazorje rozhraní pro vytváření interaktivního webového uživatelského rozhraní na straně klienta pomocí rozhraní .NET:

  • Vytvářejte bohaté interaktivní UI pomocí jazyka C# místo JavaScriptu.
  • Sdílejte logiku aplikace na straně serveru a klienta napsané v .NET.
  • Vykreslte uživatelské rozhraní jako HTML a CSS pro širokou podporu prohlížeče, včetně mobilních prohlížečů.
  • Integrace s moderními hostitelskými platformami, jako je Docker

Použití .NET pro vývoj webu na straně klienta nabízí následující výhody:

  • Pište kód v jazyce C# místo JavaScriptu.
  • Využití stávajícího ekosystému .NET knihoven .NET
  • Sdílení logiky aplikace napříč serverem a klientem
  • Využijte výhod . Výkon, spolehlivost a zabezpečení technologie NET.
  • Zůstaňte produktivní díky Visual Studio v Windows, Linuxu a macOS.
  • Využijte společnou sadu jazyků, architektur a nástrojů, které jsou stabilní, mají bohaté funkce a snadno se používají.

Komponenty

Blazor Aplikace jsou založené na komponentách. Komponenta v Blazor je prvek uživatelského rozhraní, jako je například stránka, dialogové okno nebo formulář pro zadávání dat.

Komponenty jsou třídy .NET jazyka C# integrované do sestavení .NET, které:

  • Definování flexibilní logiky vykreslování uživatelského rozhraní
  • Zpracování událostí uživatele
  • Lze je vnořit a znovu použít.
  • Lze sdílet a distribuovat jako Razor knihovny tříd nebo NuGet balíčky.

Třída komponenty je obvykle zapsána ve formě stránky Razor s kódem s .razor příponou souboru. Komponenty v Blazor systému jsou formálně označovány jako Razor komponenty. Razor je syntaxe pro kombinování značek HTML s kódem jazyka C# určeným pro produktivitu vývojářů. Razorumožňuje přepínat mezi značkami HTML a C# ve stejném souboru s podporou programování IntelliSense v Visual Studio. Razor Pages a MVC také používají Razor . Na rozdíl od Pages a MVC, které jsou postavené na modelu požadavků a odpovědí, se komponenty používají speciálně pro logiku a složení uživatelského rozhraní Razor na straně klienta.

Blazor používá přirozené značky HTML pro kompozici uživatelského rozhraní. Následující Razor kód ukazuje komponentu ( Dialog.razor ), která zobrazuje dialogové okno a zpracovává událost, když uživatel vybere tlačítko:

<div class="card" style="width:22rem">
    <div class="card-body">
        <h3 class="card-title">@Title</h3>
        <p class="card-text">@ChildContent</p>
        <button @onclick="OnYes">Yes!</button>
    </div>
</div>

@code {
    [Parameter]
    public RenderFragment ChildContent { get; set; }

    [Parameter]
    public string Title { get; set; }

    private void OnYes()
    {
        Console.WriteLine("Write to the console in C#! 'Yes' button selected.");
    }
}

V předchozím příkladu OnYes je metoda C# aktivovaná onclick událostí tlačítka. Text ( ChildContent ) a title () v dialogovém okně Title jsou poskytovány následující komponentou, která tuto komponentu používá v uživatelském rozhraní.

DialogKomponenta je vnořena do jiné komponenty pomocí značky jazyka HTML. V následujícím příkladu Index Komponenta ( Pages/Index.razor ) používá předchozí Dialog komponentu. TitleAtribut tagu předává hodnotu pro název Dialog Title Vlastnosti komponenty. DialogText součásti ( ChildContent ) je nastaven podle obsahu <Dialog> elementu. když Dialog je komponenta přidána do Index komponenty, IntelliSense v Visual Studio zrychluje vývoj pomocí syntaxe a dokončování parametrů.

@page "/"

<h1>Hello, world!</h1>

<p>
    Welcome to your new app.
</p>

<Dialog Title="Learn More">
    Do you want to <i>learn more</i> about Blazor?
</Dialog>

Dialogové okno se vykreslí, když Index se k součásti dostanete v prohlížeči. Když uživatel vybere tlačítko, v konzole nástroje pro vývojáře v prohlížeči se zobrazí zpráva zapsaná OnYes metodou:

Komponenta dialogového okna vykreslená v prohlížeči, která je vnořená v rámci součásti indexu. Konzola nástroje pro vývojáře v prohlížeči zobrazuje zprávu zapsanou v kódu jazyka C#, když uživatel vybere Ano! tlačítko v uživatelském rozhraní.

Komponenty vykreslí do reprezentace v paměti model DOM (Document Object Model) v prohlížeči (DOM) , která se nazývá strom vykreslování, který se používá k aktualizaci uživatelského rozhraní flexibilním a efektivním způsobem.

Blazor WebAssembly

Blazor WebAssembly je Architektura jednostránkové aplikace (Spa) pro vytváření interaktivních webových aplikací na straně klienta s .NET. Blazor WebAssembly používá otevřené webové standardy bez modulů plug-in nebo opětovné kompilování kódu do jiných jazyků. Blazor WebAssembly funguje ve všech moderních webových prohlížečích, včetně mobilních prohlížečů.

Spuštění kódu .NET ve webových prohlížečích je umožněno webovým sestavením (zkráceně wasm ). WebAssembly je formát kompaktního bajtu optimalizovaného pro rychlé stažení a maximální rychlost spuštění. WebAssembly je otevřený webový standard a podporuje se ve webových prohlížečích bez modulů plug-in.

Kód webového sestavení má přístup k úplným funkcím prohlížeče prostřednictvím JavaScriptu, který se označuje jako interoperabilita JavaScriptu, často se zkracuje na interoperabilitu JavaScript nebo js. Kód .NET spuštěný pomocí webového sestavení v prohlížeči se spouští v izolovaném prostoru JavaScript v prohlížeči s ochranou, že izolovaný prostor poskytuje proti škodlivým akcím v klientském počítači.

::: No-Loc (Blazor WebAssembly)::: spustí kód .NET v prohlížeči pomocí webového sestavení.

Když Blazor WebAssembly je aplikace sestavená a spuštěná v prohlížeči:

  • Soubory a soubory kódu jazyka C# Razor jsou zkompilovány do sestavení .NET.
  • Sestavení a modul runtime .NET se stáhnou do prohlížeče.
  • Blazor WebAssembly spustí modul .NET runtime a nakonfiguruje modul runtime, aby načetl sestavení pro aplikaci. Blazor WebAssemblyModul runtime používá zprostředkovatele komunikace s JavaScriptem pro zpracování volání DOM a volání rozhraní API prohlížeče.

Velikost publikované aplikace, její Velikost datové části, je důležitým faktorem výkonu pro použitelnost aplikace. Stažení velké aplikace může trvat poměrně dlouhou dobu, než se stáhne do prohlížeče, což snižuje činnost koncového uživatele. Blazor WebAssembly optimalizuje velikost datové části, aby se snížila doba stahování:

  • Nepoužitý kód se z aplikace vyčerpá, když se publikuje pomocí linkeru pro převodní jazyk (IL).
  • Odpovědi HTTP jsou komprimovány.
  • Modul runtime .NET a sestavení jsou ukládány do mezipaměti v prohlížeči.

Blazor Server

Blazor odpojí logiku vykreslování komponenty od způsobu použití aktualizací uživatelského rozhraní. Blazor Server poskytuje podporu pro hostování Razor komponent na serveru aplikace v ASP.NET Core. Aktualizace uživatelského rozhraní se zpracovávají přes SignalR připojení.

Modul runtime zůstává na serveru a popisovačích:

  • Spouští se kód C# aplikace.
  • Odesílání událostí uživatelského rozhraní z prohlížeče na server.
  • Použití aktualizací uživatelského rozhraní pro vykreslenou komponentu, která je poslána zpět serverem.

Připojení, které používá Blazor Server ke komunikaci s prohlížečem, slouží také ke zpracování volání interoperability JavaScript.

::: No-Loc (Blazor Server)::: spustí .NET kód na serveru a spolupracuje s model DOM (Document Object Model) na klientovi přes::: No-Loc (signál)::: Connection

Interoperabilita JavaScriptu

Pro aplikace, které vyžadují knihovny JavaScript třetích stran a přístup k rozhraním API prohlížeče, komponenty, které spolupracují s JavaScriptem. Komponenty umožňují použití libovolné knihovny nebo rozhraní API, které může JavaScript používat. Kód jazyka c# může zavolat do kódu jazyka JavaScripta kód JavaScriptu může volat kód jazyka c#.

Sdílení kódu a .NET Standard

Blazor implementuje .NET Standard, který umožňuje Blazor projektům odkazovat na knihovny, které odpovídají specifikacím .NET Standard. .NET Standard je formální specifikace rozhraní .NET API, která jsou společná pro implementace v rozhraní .NET. knihovny tříd .NET Standard lze sdílet napříč různými platformami .net, jako jsou například Blazor , .NET Framework, .net Core, Xamarin, Mono a Unity.

Rozhraní API, která nejsou platná v rámci webového prohlížeče (například přístup k systému souborů, otevření soketu a vlákna) vyvolávají výjimku PlatformNotSupportedException .

Další zdroje informací