Platforma Blazor. Praktyczny przewodnik. Jak tworzyć interaktywne aplikacje internetowe z C# i .NET 7. Wydanie II
SPIS TREŚCI
O autorze
O recenzentach
Przedmowa
Wprowadzenie
Rozdział 1. Witaj, Blazor!
Wymagania techniczne
Dlaczego Blazor?
Poprzednicy platformy Blazor
Model WebAssembly
Wprowadzenie do platformy .NET 7
Wprowadzenie do platformy Blazor
Blazor Server
WebAssembly
Blazor WebAssembly kontra Blazor Server
Blazor Hybrid/.NET MAUI
Podsumowanie
Dalsza lektura
Rozdział 2. Utworzenie pierwszej aplikacji Blazor
Wymagania techniczne
Przygotowanie środowiska programistycznego
Windows
macOS
Linux (macOS lub Windows)
Utworzenie pierwszej aplikacji Blazor
Szablony projektów
Utworzenie aplikacji Blazor Server
Utworzenie aplikacji Blazor WebAssembly
Korzystanie z wiersza poleceń
Utworzenie projektu
Struktura projektu
Program.cs
Index/_Host
App
MainLayout
Bootstrap
CSS
Podsumowanie
Rozdział 3. Udostępnianie kodu i zasobów
Wymagania techniczne
Utworzenie magazynu danych
Utworzenie nowego projektu
Utworzenie klas danych
Utworzenie interfejsu
Zaimplementowanie interfejsu
Utworzenie interfejsu API
Podsumowanie
Rozdział 4. Podstawowe komponenty platformy Blazor
Wymagania techniczne
Informacje o komponentach
Komponent Counter
Komponent FetchData
Składnia Razora
Bloki kodu
Wyrażenia niejawne
Wyrażenia jawne
Kodowanie wyrażeń
Dyrektywy
Wstrzykiwanie zależności
Singleton
Obiekt zakresowy
Obiekt przejściowy
Wstrzykiwanie usługi
Miejsca umieszczania kodu
Plik .razor
Klasa częściowa
Klasa pochodna
Osobny plik
Zdarzenia w cyklu życia komponentu
Metody OnInitialized i OnInitializedAsync
Metody OnParametersSet i OnParametersSetAsync
Metody OnAfterRender i OnAfterRenderAsync
Metoda ShouldRender
Parametry komponentu
Parametry kaskadowe
Utworzenie pierwszego komponentu
Utworzenie biblioteki komponentów
Wykorzystanie biblioteki komponentów
Utworzenie komponentu
Podsumowanie
Rozdział 5. Tworzenie zaawansowanych komponentów Blazora
Wymagania techniczne
Wiązanie danych
Wiązania jednokierunkowe
Wiązanie dwukierunkowe
Akcje i struktura EventCallback
Metoda RenderFragment
Fragment ChildContent
Wartość domyślna
Utworzenie komponentu alarmu
Nowe wbudowane komponenty
Ustawianie fokusu na elementach interfejsu graficznego
Modyfikowanie sekcji <head>
Wirtualizacja komponentów
Granice błędów
Podsumowanie
Rozdział 6. Tworzenie formularzy z weryfikacją danych
Wymagania techniczne
Elementy formularza
EditForm
InputBase
InputCheckbox
InputDate
InputNumber
InputSelect
InputText
InputTextArea
InputRadio
InputRadioGroup
InputFile
Implementacja weryfikacji poprawności danych
Komponent ValidationMessage
Komponent ValidationSummary
Niestandardowe klasy stylów weryfikacji
Wiązanie danych
Wiązanie danych w elementach HTML
Wiązanie danych w komponentach
Utworzenie interfejsu administracyjnego
Wyświetlanie i edytowanie kategorii
Wyświetlanie i edytowanie tagów
Wyświetlanie i edytowanie wpisów
Podsumowanie
Rozdział 7. Tworzenie interfejsu API
Wymagania techniczne
Utworzenie usługi
Implementacja dostępu do danych
Minimalistyczny interfejs API
Utworzenie kontrolerów API
Utworzenie klienta
Podsumowanie
Rozdział 8. Uwierzytelnianie i autoryzacja
Wymagania techniczne
Implementacja uwierzytelniania użytkowników
Konfiguracja aplikacji Blazor Server
Uwierzytelnianie w aplikacji Blazor Server
Uwierzytelnianie w aplikacji Blazor WebAssembly
Dostosowanie usługi Auth0
Uwierzytelnianie w interfejsie API
Konfiguracja usługi Auth0
Konfiguracja interfejsu API
Implementacja autoryzacji
Konfiguracja ról w usłudze Auth0
Implementacja ról w aplikacji Blazor Server
Implementacja ról w aplikacji Blazor WebAssembly
Podsumowanie
Rozdział 9. Udostępnianie kodu i zasobów
Wymagania techniczne
Pliki statyczne
Wybór platformy
Tworzenie stylu
Dodanie stylów CSS do projektu BlazorServer
Dodanie stylów CSS do projektu BlazorWebAssembly
Ulepszenie interfejsu administracyjnego
Ulepszenie menu
Dostosowanie wyglądu bloga
Izolacja stylów CSS
Podsumowanie
Rozdział 10. Interakcja z JavaScriptem
Wymagania techniczne
Dlaczego potrzebny jest kod JavaScript?
Odwołania z C# do JavaScriptu
Tryb globalny
Tryb izolowany
Odwołania z JavaScriptu do C#
Wywołanie metody statycznej
Wywołanie metody instancji
Wykorzystanie istniejącej biblioteki JavaScript
Interakcja z JavaScriptem w aplikacji Blazor WebAssembly
Wywoływanie kodu JavaScript w kodzie C#
Wywoływanie kodu C# w kodzie JavaScript
Podsumowanie
Rozdział 11. Zarządzanie stanem – część II
Wymagania techniczne
Przechowywanie danych po stronie serwera
Przechowywanie danych w adresie URL
Restrykcje ścieżek
Kwerendy
Mniej typowe przypadki
Przechowywanie danych w pamięci przeglądarki
Utworzenie interfejsu
Implementacja interfejsu w aplikacji Blazor Server
Implementacja interfejsu w aplikacji Blazor WebAssembly
Wspólny kod
Przechowywanie danych w usłudze kontenera stanu w pamięci
Aktualizacje na bieżąco w aplikacji Blazor Server
Aktualizacje na bieżąco w aplikacji Blazor WebAssembly
Podsumowanie
Rozdział 12. Debugowanie kodu
Wymagania techniczne
Wprowadzanie błędów
Debugowanie aplikacji Blazor Server
Debugowanie aplikacji Blazor WebAssembly
Debugowanie aplikacji Blazor WebAssembly w przeglądarce
Przeładowywanie kodu na gorąco
Podsumowanie
Rozdział 13. Testowanie
Wymagania techniczne
Co to jest bUnit?
Przygotowanie projektu testowego
Imitowanie interfejsu API
Tworzenie testów
Testowanie uwierzytelniania użytkowników
Testowanie JavaScriptu
Podsumowanie
Rozdział 14. Wdrażanie w środowisku produkcyjnym
Wymagania techniczne
Ciągłe dostarczanie oprogramowania
Opcje hostingu
Hosting Blazor Server
Hosting Blazor WebAssembly
Hosting IIS
Podsumowanie
Rozdział 15. Migracja i integracja istniejącej witryny
Wymagania techniczne
Web Components
Custom Elements
Komponent Blazora
Wykorzystanie platformy Blazor w witrynie Angular
Wykorzystanie platformy Blazor w witrynie React
Wykorzystanie platformy Blazor w witrynie MVC/Razor Pages
Wykorzystanie komponentów Web Components w witrynie Blazor
Migracja z Web Forms
Podsumowanie
Rozdział 16. WebAssembly od środka
Wymagania techniczne
Narzędzia kompilacyjne .NET WebAssembly
Kompilacja AOT
WebAssembly SIMD
Przycinanie kodu
Leniwe ładowanie kodu
Aplikacje PWA
Natywne zależności
Typowe problemy
Wskaźnik postępu
Wstępne renderowanie na serwerze
Wstępne ładowanie strony i zapisywanie stanu aplikacji
Podsumowanie
Rozdział 17. Generatory kodu źródłowego
Wymagania techniczne
Czym są generatory kodu?
Pierwsze kroki z generatorem
Projekty społeczności
InterfaceGenerator
Blazorators
Generatory kodu C#
Przykłady Roslyn SDK
Microsoft Learn
Podsumowanie
Rozdział 18. Wprowadzenie do .NET MAUI
Wymagania techniczne
Co to jest .NET MAUI?
Utworzenie projektu
Aplikacja platformy .NET MAUI
Biblioteka klas platformy .NET MAUI
Aplikacja platformy .NET MAUI Blazor
Szczegóły szablonu
Uruchamianie aplikacji w systemie Android
Uruchomienie aplikacji na emulatorze
Uruchomienie aplikacji na fizycznym urządzeniu
Uruchamianie aplikacji w systemie iOS
Gorący restart
Uruchamianie aplikacji w systemie macOS
Uruchamianie aplikacji w systemie Windows
Uruchamianie aplikacji w systemie Tizen
Podsumowanie
Rozdział 19. Dalsze kroki
Wymagania techniczne
Doświadczenia w uruchamianiu aplikacji Blazor w środowisku produkcyjnym
Problemy z pamięcią
Problemy z wielowątkowością
Błędy
Stare przeglądarki
Dalsze kroki
Społeczność
Komponenty
Podsumowanie
Opinie
Na razie nie ma opinii o produkcie.