Kategoria: C# i .NET
O szkoleniu
Entity Framework Core to standardowy sposób pracy z bazą danych w aplikacjach .NET. Łatwo w nim zacząć, ale w większych projektach szybko pojawiają się problemy: wolne zapytania, kłopotliwe migracje, nieoczekiwane zachowanie relacji. Na tym szkoleniu przechodzimy przez EF Core na tyle głęboko, żeby budować warstwę dostępu do danych świadomie i szybko znajdować przyczyny problemów.
Po dwóch dniach:
- zaprojektujesz model danych z relacjami i dziedziczeniem,
- będziesz bezpiecznie zarządzać migracjami w zespole i przy wdrożeniu,
- napiszesz wydajne zapytania LINQ i sprawdzisz, jaki SQL z nich powstaje,
- poradzisz sobie z transakcjami i współbieżnym zapisem danych,
- rozpoznasz typowe problemy wydajności i ocenisz, kiedy lepiej sięgnąć po Dapper albo czysty SQL.
Szkolenie zakłada znajomość C#. Jeśli dopiero przechodzisz na .NET z innego języka, zacznij od szkolenia C# i .NET dla programistów. Jak wykorzystać EF Core w aplikacji webowej, pokazujemy na szkoleniu ASP.NET Core Web API.
Szkolenie wybierają programiści aplikacji webowych, desktopowych i usług w .NET, osoby, które w C# przetwarzają dane i budują raporty na bazie SQL Server, a także zespoły, które chcą uporządkować warstwę dostępu do danych albo przejść na EF Core ze starszego Entity Framework.
Czas trwania
2 dni
Program
- Jak działa Entity Framework Core
- ORM w praktyce: kontekst bazy danych, encje, dostawcy baz danych
- EF Core a starszy Entity Framework 6
- Model danych
- Konwencje, adnotacje i konfiguracja (Fluent API)
- Relacje: jeden do jednego, jeden do wielu, wiele do wielu
- Dziedziczenie w bazie danych (TPH, TPT, TPC)
- Typy własne i konwertery wartości
- Migracje
- Tworzenie i wykonywanie migracji
- Migracje w pracy zespołowej i przy wdrożeniu
- Dane początkowe (seeding)
- Zapytania
- LINQ to Entities: filtrowanie, projekcje, grupowanie, złączenia
- Ładowanie powiązanych danych: eager, explicit, lazy loading
- Zapytania SQL wprost, filtry globalne
- Zapis danych
- Śledzenie zmian
- Transakcje i współbieżność (optimistic concurrency)
- Wydajność
- Problem N+1, zapytania bez śledzenia, zapytania kompilowane
- Podgląd generowanego SQL i analiza zapytań
- Kiedy Dapper albo czysty SQL
Na zamówienie możemy pracować na innej bazie danych (np. PostgreSQL) albo poświęcić więcej czasu przejściu z Entity Framework 6 na EF Core.
Training also available in English .
Przeznaczenie i wymagania
Szkolenie przeznaczone przede wszystkim dla:
- programistów aplikacji webowych, desktopowych i usług w .NET,
- programistów C# przetwarzających dane i budujących raporty na bazach SQL,
- zespołów porządkujących warstwę dostępu do danych albo przechodzących z Entity Framework 6 na EF Core.
Od uczestników oczekujemy:
- praktycznej znajomości języka C#, w tym LINQ,
- podstawowej znajomości SQL i relacyjnych baz danych.
Brakujące podstawy C# uzupełnisz na szkoleniu C# i .NET dla programistów.
Certyfikaty
Uczestnicy szkolenia otrzymują imienne certyfikaty sygnowane przez ALX.