IRONSOFTWAREHOME
AKTUALNOŚCI DLA PROGRAMISTÓW

Blazor .NET 8 (samouczek dla programistów)

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Jacob Mellor
Updated: 21 kwietnia 2026

Blazor, framework UI do tworzenia stron internetowych typu full-stack, znacznie ewoluował wraz z wydaniem .NET 8.0. Ta aktualizacja wprowadza różne funkcje i ulepszenia, które umożliwiają programistom tworzenie interaktywnych i nowoczesnych aplikacji internetowych przy użyciu C# i .NET.

Blazor .NET 8.0 wprowadza nowe tryby renderowania, szablony projektów i ulepszenia narzędzi do tworzenia interaktywnych aplikacji internetowych przy użyciu C# i .NET.

Blazor .NET 8 (Samouczek dewelopera): Rysunek 1

Rozumienie Trybów Renderowania Blazor

Blazor w .NET 8.0 wprowadza trzy tryby renderowania:

  1. Statyczne renderowanie serwera: Generuje statyczny HTML dla optymalnej wydajności.
  2. Interaktywne renderowanie serwera: Wykorzystuje serwerowy runtime ASP.NET Core do początkowego renderowania i interaktywności.
  3. Interaktywne renderowanie WebAssembly: Wykorzystuje runtime .NET WebAssembly na kliencie do dalszego renderowania i interaktywności.

Wszechstronne Interaktywne Renderowanie Automatyczne

Jedną z najważniejszych cech jest tryb Interaktywnego Renderowania Automatycznego, który łączy renderowanie po stronie serwera w celu zawartości z dalszym renderowaniem i interaktywnością po stronie klienta przy użyciu runtime .NET WebAssembly. Powoduje to szybsze uruchomienie aplikacji, co czyni go atrakcyjną opcją dla programistów.

Wprowadzenie Szablonu Aplikacji Web Blazor

.NET 8.0 wprowadza szablon Aplikacji Web Blazor, zjednoczony punkt startowy, który łączy zalety modeli hostingowych Blazor Server i Blazor WebAssembly.

Ten szablon zawiera nowe funkcje, takie jak statyczne renderowanie serwera, renderowanie strumieniowe, ulepszona nawigacja i obsługa formularzy. Konsolidacja szablonów projektów upraszcza proces tworzenia.

Uproszczone Inicjalizatory JS dla Aplikacji Web Blazor

Tradycyjne inicjalizatory JS zostały zastąpione nowym zestawem dla aplikacji Blazor, oferując lepszą kontrolę nad zadaniami, takimi jak dostosowywanie procesu ładowania, poziomy logowania i inne opcje. Ta zmiana poprawia doświadczenia z tworzenia aplikacji i jest zgodna z celem ujednolicenia modeli hostingowych w .NET 8.0.

Rozdzielenie Wskazówek dotyczących Wstępnego Renderowania i Integracji

Aby zapewnić bardziej skoncentrowane pokrycie, wskazówki dotyczące wstępnego renderowania i integracji zostały rozdzielone na osobne artykuły. Ta zmiana ma na celu uproszczenie zrozumienia i wdrażania, ułatwiając programistom przestrzeganie najlepszych praktyk.

Bezproblemowe Przechowywanie Stanu w Aplikacjach Web Blazor

Aplikacje Web Blazor teraz automatycznie przechowują każdy zarejestrowany stan aplikacji utworzony podczas wstępnego renderowania. To eliminuje potrzebę korzystania z Pomocnika Znaków Przechowywania Stanu Komponentu, upraszczając proces przechowywania i odczytywania stanu komponentu.

Ulepszona Obsługa Formularzy i Wiązanie Modelu

.NET 8.0 przynosi ulepszone możliwości obsługi formularzy w komponentach Blazor, w tym wiązanie modelu i walidację danych. Framework respektuje atrybuty kontraktu danych, zapewniając programistom większą kontrolę nad tym, jak dane formularza są wiązane z modelem. Wprowadzenie wsparcia dla ochrony przed fałszerstwami dodaje dodatkową warstwę bezpieczeństwa do przesyłania formularzy.

Ulepszona Nawigacja i Obsługa Formularzy

Statyczne renderowanie serwera w Blazor .NET 8.0 wprowadza znaczną poprawę w nawigacji po stronie i obsłudze formularzy. Tradycyjnie podczas nawigacji lub przesyłania formularza występowały pełne odświeżenia strony.

Dzięki funkcji ulepszonej nawigacji Blazor przechwytuje żądanie i wykonuje żądanie pobrania, bezproblemowo naprawiając zawartość odpowiedzi renderowanej w przeglądarce DOM. To unika pełnych odświeżeń strony, co prowadzi do szybszych i bardziej płynnych ładowań strony, jednocześnie zachowując większą część stanu strony.

Ulepszona nawigacja jest domyślnie włączona, gdy skrypt Blazor (blazor.web.js) jest załadowany, a także może być opcjonalnie włączona dla konkretnych formularzy. Nowe API ulepszonej nawigacji pozwala programistom na programowe odświeżenie bieżącej strony, zapewniając jeszcze większą kontrolę nad doświadczeniem użytkownika.

Renderowanie Strumieniowe

Blazor .NET 8.0 wprowadza renderowanie strumieniowe, potężną funkcję, która poprawia doświadczenia użytkownika dla stron wykonujących długo trwające zadania asynchroniczne. Z renderowaniem strumieniowym, strony mogą renderować zawartość zastępczą podczas przetwarzania operacji asynchronicznych.

Po zakończeniu, zaktualizowana zawartość jest przesyłana na klienta na tym samym połączeniu odpowiedzi i bezproblemowo naprawiana w DOM. To podejście zapewnia, że główny układ aplikacji renderuje się szybko, a strona aktualizuje się, gdy tylko dostępna jest zawartość.

Wstrzykiwanie Usług Kluczowych

Blazor teraz wspiera wstrzykiwanie usług z kluczem za pomocą atrybutu Inject. Klucze umożliwiają zakreślenie rejestracji i konsumpcji usług w scenariuszach wstrzykiwania zależności.

Nowa właściwość InjectAttribute.Key pozwala programistom określić klucz dla usługi do wstrzyknięcia, otwierając nowe możliwości dla określania zakresu usług.

Uzyskiwanie dostępu do HttpContext jako parametru kaskadowego

Blazor .NET 8.0 wprowadza możliwość uzyskiwania dostępu do bieżącego HttpContext jako parametru kaskadowego z komponentu serwera statycznego. To ulepszenie jest szczególnie przydatne do sprawdzania i modyfikowania nagłówków lub innych właściwości związanych z kontekstem HTTP.

Renderowanie Komponentów Razor poza ASP.NET Core

Blazor .NET 8.0 otwiera możliwość renderowania komponentów Razor poza kontekstem żądania HTTP. Ta elastyczność pozwala programistom na renderowanie komponentów Razor bezpośrednio na ciąg lub strumień, niezależnie od środowiska hostingowego ASP.NET Core.

Ta funkcja jest szczególnie przydatna w scenariuszach, gdzie konieczne jest generowanie fragmentów HTML, takich jak e-maile lub zawartość statycznych stron.

Wsparcie dla Sekcji

W Blazor .NET 8.0, wprowadzenie komponentów SectionOutlet i SectionContent rewolucjonizuje zarządzanie treścią. Te komponenty pozwalają programistom na definiowanie zastępczych miejsc w układach, które później są wypełniane przez określone strony.

Sekcje mogą być odwoływane za pomocą unikalnych nazw lub identyfikatorów obiektów, zapewniając elastyczność i możliwość ponownego wykorzystania przy konstruowaniu dynamicznych układów stron internetowych.

Wsparcie dla Stron Błędów

Aplikacje Web Blazor w .NET 8.0 teraz posiadają solidne wsparcie dla stron błędów, pozwalając programistom na definiowanie niestandardowych stron błędów do użycia z middleware obsługi wyjątków ASP.NET Core.

Domyślna strona błędu (Components/Pages/Error.razor) zapewnia spójne doświadczenie użytkownika. Nawet gdy interaktywność jest włączona, strona błędu renderuje się jako komponent statyczny serwera, zapewniając stabilność podczas scenariuszy wyjątków.

QuickGrid od eksperymentalnego do istotnego

QuickGrid, wysokowydajny komponent siatki, awansował ze statusu eksperymentalnego, stając się integralną częścią frameworka Blazor w .NET 8.

Ten komponent upraszcza wyświetlanie danych w postaci tabelarycznej, oferując jednocześnie potężne funkcje, takie jak sortowanie, filtrowanie, stronicowanie i wirtualizacja. Dowiedz się więcej o QuickGrid w dokumentacji QuickGrid ASP.NET Core Blazor.

Trasa do Elementów o Podanej Nazwie

Blazor .NET 8.0 wprowadza wsparcie dla trasowania po stronie klienta w celu nawigacji bezpośrednio do określonych elementów HTML na stronie za pomocą standardowych fragmentów URL. Podając identyfikator dla elementu HTML z użyciem standardowego atrybutu id, Blazor płynnie przewija się do tego elementu, gdy fragment URL odpowiada identyfikatorowi elementu.

Wartości Kaskadowe na Poziomie Głównym

Blazor .NET 8.0 rozszerza wartości kaskadowe, wprowadzając wartości kaskadowe na poziomie głównym, które mogą być rejestrowane dla całej hierarchii komponentów. Teraz obsługiwane są nazwane wartości kaskadowe i subskrypcje dla powiadomień o aktualizacjach, zapewniając większą elastyczność i kontrolę.

Wirtualizacja Pustej Zawartości

Nowy parametr EmptyContent w komponencie Virtualize umożliwia programistom dostarczanie zawartości, gdy komponent został załadowany, a element jest pusty lub ItemsProviderResult<t>.TotalItemCount jest równy zero.

To daje programistom możliwość tworzenia bardziej intuicyjnych i przyjaznych dla użytkownika interfejsów.

Zarządzanie Obwodami i Monitorowanie SignalR

Blazor .NET 8.0 wprowadza możliwość zamykania obwodów, gdy nie ma już pozostałych interaktywnych komponentów serwera. Ta optymalizacja zwalnia zasoby serwera i poprawia ogólną wydajność.

Dodatkowo, programiści mogą teraz monitorować aktywność obwodu przychodzącego w aplikacjach po stronie serwera, używając metody CreateInboundActivityHandler na CircuitHandler.

Szybsza Wydajność Runtime z Jiterpreter

Jiterpreter, nowa funkcja czasu wykonywania w .NET 8, wprowadza częściowe wsparcie kompilacji Just-in-Time (JIT), gdy działa na WebAssembly. Skutkuje to poprawioną wydajnością runtime, oferując płynniejsze doświadczenie dla użytkowników wchodzących w interakcję z aplikacjami Blazor WebAssembly.

Kompilacja Ahead-of-Time (AOT) SIMD i Obsługa Wyjątków

Kompilacja AOT Blazor WebAssembly teraz domyślnie używa WebAssembly Fixed-width SIMD i obsługi wyjątków WebAssembly. Ten strategiczny wybór znacznie poprawia wydajność runtime, zapewniając bardziej efektywne i responsywne doświadczenie użytkownika.

Pakowanie Webcil dla Przyjaznego dla Sieci Wdrażania

Blazor WebAssembly teraz wykorzystuje Webcil, przyjazne dla sieci pakowanie zespołów .NET. Zapewnia to zgodność w środowiskach, które blokują pobieranie lub używanie plików .dll, rozwiązując problemy związane z wdrażaniem. Webcil jest domyślnie włączony dla aplikacji Blazor WebAssembly.

Ulepszenia w Debugowaniu Blazor WebAssembly

Debugowanie aplikacji Blazor WebAssembly stało się bardziej uporządkowane w .NET 8. Debuger teraz pobiera dane symboliczne z skonfigurowanych lokalizacji w preferencjach Visual Studio, poprawiając doświadczenia z debugowaniem dla aplikacji wykorzystujących pakiety NuGet.

Dodatkowo, debugowanie jest teraz obsługiwane w Firefox, co wymaga skonfigurowania do zdalnego debugowania i połączenia przez .NET WebAssembly debugowanie proxy.

Zgodność z Zasadą Bezpieczeństwa Treści (CSP)

Blazor WebAssembly w .NET 8.0 eliminuje potrzebę włączania źródła skryptu unsafe-eval przy określaniu Zasady Bezpieczeństwa Treści (CSP). To ulepszenie upraszcza konfiguracje bezpieczeństwa, co ułatwia egzekwowanie solidnego CSP dla aplikacji Blazor WebAssembly.

Obsługa Wyjątków Poza Cyklami Życia Komponentu

Wprowadzenie ComponentBase.DispatchExceptionAsync umożliwia programistom przetwarzanie wyjątków rzucanych poza stos wywołań życiowego cyklu komponentu Razor.

Funkcja ta pozwala kodowi komponentu traktować wyjątki tak, jakby były wyjątkami metody cyklu życia, zapewniając bardziej spójny i kontrolowany mechanizm obsługi błędów.

Przedstawiamy Iron Suite

Iron Suite, opracowany przez Iron Software, składa się z kilku przydatnych bibliotek, umożliwiając programistom tworzenie potężnych aplikacji Blazor. Oferuje rozwiązania do dodawania funkcjonalności PDF, obsługi plików Excel lub CSV, rozpoznawania obrazów na tekst, generowania i odczytu kodów kreskowych i kodów QR oraz możliwość kompresji i rozpakowania plików.

Iron Suite jest doskonałym wyborem do rozważenia w przypadku tworzenia aplikacji internetowych z użyciem modelu hostingowego Blazor WebAssembly lub jakiejkolwiek technologii Microsoft, w tym aplikacji Blazor WebAssembly, aplikacji serwerowej Blazor, aplikacji ASP.NET Core MVC, aplikacji sieciowych ASP.NET core lub każdej aplikacji zbudowanej w czasie wykonywania .NET, bez względu na jej wersję.

Biblioteki Iron Suite

  1. IronPDF do bezproblemowego tworzenia, manipulowania i wyodrębniania danych z plików PDF.

    Wyróżniającą się funkcją IronPDF jest konwertowanie HTML do PDF, z pełnym zachowaniem układu i stylu. Jest idealny do generowania PDF-ów z zawartości internetowej, w tym raportów, faktur i dokumentacji. Możesz konwertować pliki HTML, adresy URL lub ciągi HTML na pliki PDF.

    using IronPdf;
    
    class Program
    {
        static void Main(string[] args)
        {
            var renderer = new ChromePdfRenderer();
            
            // 1. Convert HTML String to PDF
            var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
            var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
            pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");
            
            // 2. Convert HTML File to PDF
            var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
            var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
            pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");
            
            // 3. Convert URL to PDF
            var url = "http://ironpdf.com"; // Specify the URL
            var pdfFromUrl = renderer.RenderUrlAsPdf(url);
            pdfFromUrl.SaveAs("URLToPDF.pdf");
        }
    }
  2. IronOCR (Optical Character Recognition) do wyodrębniania tekstu ze skanowanych obrazów lub plików PDF, zwiększając dostępność danych.

  3. IronXL do wydajnego odczytu, zapisu i edycji arkuszy kalkulacyjnych Excel.

  4. IronBarcode do generowania i odczytywania kodów kreskowych w różnych formatach, ułatwiając kodowanie i pobieranie danych.

  5. IronQR do tworzenia i odczytywania kodów QR przy użyciu uczenia maszynowego

  6. IronWebScraper do pozyskiwania cennych danych ze stron internetowych, zwiększający możliwości aplikacji internetowych.

  7. IronZIP do kompresowania i dekompresowania plików, usprawniający procesy przechowywania i przesyłania danych.

Blazor .NET 8 (Samouczek dewelopera): Rysunek 2

Co wyróżnia pakiet Iron Suite

  1. Uzyskaj dostęp do całej Suite w cenie zaledwie dwóch pojedynczych produktów, maksymalizując wartość swojej inwestycji.
  2. Niezależnie od tego, czy pracujesz w systemie Windows, macOS czy Linux, Iron Suite zapewnia kompatybilność na (prawie) wszystkich platformach.
  3. Ciesz się szybką podróżą od pobrania do wdrożenia, z możliwością uruchomienia w zaledwie 5 minut.
  4. Uzyskaj dostęp do szczegółowej dokumentacji i przykładów dotyczących wszystkich funkcji, zapewniających jasność i wskazówki w trakcie całego procesu tworzenia oprogramowania.
  5. Dedykowany zespół inżynierów jest dostępny 24 godziny na dobę, 5 dni w tygodniu, aby pomóc Państwu w przypadku wszelkich pytań, zapewniając płynny przebieg prac programistycznych.
  6. Pakiet Iron Suite objęty jest 30-dniową polityką zwrotu bez zadawania pytań, co zapewnia pewność i spokój ducha.

Wnioski

Podsumowując, wydanie Blazor .NET 8.0 stanowi znaczący kamień milowy w ewolucji tworzenia interfejsów użytkownika typu full-stack przy użyciu języka C# i platformy .NET.

Wprowadzenie nowych trybów renderowania, szablonu aplikacji internetowej Blazor, ulepszonej nawigacji i mnóstwa innych funkcji sprawia, że jest to atrakcyjny wybór dla programistów pragnących tworzyć nowoczesne i interaktywne aplikacje internetowe.

Blazor .NET 8.0 wprowadza również atrakcyjne funkcje, takie jak ulepszona obsługa formularzy, renderowanie strumieniowe oraz możliwość wstrzykiwania usług kluczy, dodając głębię i elastyczność do procesu tworzenia oprogramowania.

Wprowadzenie pakietu Iron Suite przez firmę Iron Software uzupełnia możliwości platformy Blazor, oferując kompleksowy zestaw narzędzi do zadań związanych z dokumentami w ekosystemie .NET.

Blazor .NET 8.0 umożliwia programistom tworzenie solidnych i bogatych w funkcje aplikacji internetowych dzięki wykorzystaniu pakietu Iron Suite.

Połączenie zaawansowanych funkcji, zwiększonej wydajności oraz wsparcia ze strony prężnej społeczności programistów sprawia, że Blazor jest atrakcyjnym wyborem dla nowoczesnego tworzenia stron internetowych.

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Dyrektor ds. technologii

Jacob Mellor jest Chief Technology Officer w Iron Software i wizjonerskim inżynierem, pionierem technologii C# PDF. Jako pierwotny deweloper głównej bazy kodowej Iron Software, kształtuje architekturę produktów firmy od jej początku, przekształcając ją wspólnie z CEO Cameron Rimington w firmę liczącą ponad 50 osób, obsługującą NASA, Teslę i światowe agencje rządowe.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta