Počas tohto kurzu nadviažeme na predchádzajúci kurz ASPNET5_INTRO a budeme pokračovať jemným úvodom to Entity Framework Core a potom sa vrhneme na Razor Pages, MVVM framework, ktorý Microsoft ponúka ako alternatívu k predsa len trochu [...]
  • ASPNET_ADV
  • Dĺžka 5 dní
  • 50 ITK bodov
  • 12 termínov
  • Bratislava (1 250 €)

    Brno (27 000 Kč)

    Praha (27 000 Kč)

  • Mierne pokročilý

Počas tohto kurzu nadviažeme na predchádzajúci kurz ASPNET5_INTRO a budeme pokračovať jemným úvodom to Entity Framework Core a potom sa vrhneme na Razor Pages, MVVM framework, ktorý Microsoft ponúka ako alternatívu k predsa len trochu fundamentalisticky pojatému MVC.

Aplikácie vyžadujú konfiguráciu a .NET Core opúšťa predchádzajúce riešenie založené na XML web.config súboroch. Ponúka nový model mnohých konfiguračných zdrojov, objektovú nadstavbu aj User Secrets pre bezpečnú úschovu citlivých konfiguračných údajov pri vývoji.

Takmer každá webová aplikácia potrebuje odosielať e-maily. Ukážeme si, aké možnosti v ASP.NET Core aplikáciách máte a predstavíme si knižnicu Altairis.Services.Mailing. Tú môžete použiť pre riešenie svojich mailových potrieb, ale aj ako ukážku toho, ako sa všeobecne píšu univerzálne knižnice pre .NET Core.

Ďalšia veľká časť kurzu je venovaná internacionalizácii - príprave aplikácie na globálne nasadenie, prekladu do rôznych jazykov, validáciu užívateľských vstupov vrátane klientskej validácie (a prekladu jej hlášok). Užívateľské rozhranie je možné - a vhodné - generovať na základe anotačných atribútov dynamicky a my si ukážeme, ako na to.

Posledná časť sa týka zabezpečenia a použitia ASP.NET Identity. Naučíme vás, ako správne nasadiť a zabezpečiť aplikáciu pomocou rolí, dvojfaktorovej autentizácie, vlastných claimov, prihlasovania pomocou externých identity providerov a ďalšie užitočné veci. Ukážeme vám tiež, ako môžete do svojej novej krásnej bezpečnej aplikácie dostať užívateľa zo starších aplikácií, ktoré nie sú tak krásne (a hlavne tak bezpečné).

Poznámka:

    Ak budete používať vlastný PC, potom je potrebný nasledujúci software vrátane všetkých aktualizácií:

    • Windows 10 alebo novší
    • Visual Studio (ne Visual Studio Code) - najnovšia verzia, akákoľvek edícia vrátane bezplatnej Community s workloadom pre web a ASP.NET Core
    • Microsoft SQL Server - akákoľvek podporovaná verziu, akákoľvek edícia vrátane bezplatnej Express
    • SQL Management Studio - najnovšia verzia; nie je nevyhnutné, ale dôrazne odporúčané
  • Funkčné predplatné Microsoft Azure akéhokoľvek typu. T. j. vrátane (funkčného) trial, pay-as-you-go, Visual Studio Subscription a pod.
  • Predplatné DigitalOcean alebo možnosť si ho v priebehu kurzu zriadiť. Pri zriadení cez odkaz https://altair.is/digitalocean dostane účastník dostatočný kredit na 30 dní zdarma, ale je potrebné vždy zadať číslo platobnej karty pre overenie totožnosti.

Odporúčame software inštalovať a aktualizovať s predstihom, nie v pirebehu kurzu (trvá to zbytočne dlho) Rovnako tak odporúčame zriadiť účty, najmä trial u Azure, s predstihom. Nie však zas moc veľkým, pretože kredit je obmedzený na 30 dní. Zriadenie trialu u Azure môže chvíľu trvať a nie je dobré, keď ho z jednej adresy (firmy, učebne) robí viac ľudí naraz. V prípadě zriadenia trial účtov je kredit viac než dostatočný na všetko, čo je treba na školení urobiť. Aj v prípade plateného variantu sú náklady na zdroje spotrebované v priebehu kurzu zanedbateľné, rádovo v desať korunách.

»
  • Znalosť programovania v jazyku C# na úrovni kurzu GOC2125
  • Znalosti na úrovni kurzu ASPNET5_INTRO
  • Funkčné subscription Microsoft Azure, postačuje trial
  • Subscription Digital Ocean

Jemný úvod do Entity Framework Core

  • Zmeny oproti EF 6
  • Migrácia a jej zákernosti
  • Vytvorenie DAL v EF Core

ASP.NET Core Razor Pages

  • Razor Pages ako alternatíva k MVC Core
  • Model-View-ViewModel (MVVM) verzus Model-View-Controller (MVC) pattern
  • Základné použitie Razor Pages
  • Metódy pre spracovanie requestov

Konfigurácia

  • Zmeny oproti ASP.NET 4 a skaza súboru web.config
  • Zdroje konfigurácie: súbory, premenné prostredie, príkazové riadky a ďalšie
  • Objektová nadstavba nad key-value konfiguráciou
  • Validácia konfiguračných hodnôt
  • Sledovanie zmien v konfiguračných súboroch
  • User Secrets – úschova citlivých konfiguračných údajov pri vývoji

E-mail v ASP.NET Core

  • Možnosti posielania e-mailov (vlastný server, externá služba)
  • Knižnica Altairis.Services.Mailing ako pripravené riešenie a zároveň ukážka typickej praxe v .NET Core

View Components

  • View Components ako náhrada child akcií
  • Rozdiely oproti Server Controls v ASP.NET Web Forms
  • Registrácia a tvorba vlastných view components

Validácia vstupu a model binding

  • Štandardné validačné atribúty
  • Vlastné validačné atribúty pre vlastnosti i celé entity
  • Rozhranie IValidatableObject
  • Klientska validácia pomocou JavaScriptu a CSS

Dynamické generovanie užívateľského rozhrania

  • Prečo UI vytvárať dynamicky na základe metadát
  • Generovanie UI na úrovni poľa
  • Generovanie UI na úrovni modelu alebo jeho časti
  • Tvorba vlastných šablón

Internacionalizácia

  • Globalizácia a lokalizácia
  • Trieda CultureInfo, neutrálne a špecifické kultúry, Invariant Culture a prečo sa jej vyhnúť
  • Nastavenie kultúry, request localization middleware
  • Lokalizácia užívateľského rozhrania pomocou resources
  • Lokalizácia data annotations atribútov
  • Conventional Metadata Providers

Zabezpečenie webových aplikácií

  • Základné koncepty a pojmy
  • Autentizačné faktory
  • Cookie Authentication Middleware
  • Claims-based Identity

ASP.NET Identity

  • Základné použitie, vytváranie užívateľov, prihlásenie, odhlásenie
  • Reset hesla ako slabé miesto bezpečnosti aplikácií a ako to robiť správne
  • Práca s rolami a role-based autorizácia
  • Dvojfaktorová autentizácia, použitie jednorazových hesiel

Customizácia ASP.NET Identity

  • Rozšírenie údajov o užívateľovi
  • Identity Stores
  • Úschova hesiel a prečo sa do toho nevŕtať
  • Migrácia legacy užívateľov, alebo keď sa do toho vŕtať, bohužiaľ, musíte
  • Trieda SignInManager, logovanie a obmedzenie prihlásenia
  • SecurityStamp a jeho využitie, odhlásenie zo všetkých sessions
  • Prihlasovanie pomocou externých identity providerov a iných facebookov
  • Overenie telefónneho čísla pomocou SMS
  • Login Approvals: prihlasovanie bez hesiel
  • Použitie vlastných claimov v ASP.NET Identity

ASP.NET Data Protection

  • Použitie v rámci .NET Core a vlastné využitie
  • Predvolená konfigurácia a jej zmeny
  • Ukladanie kľúčov do súborového systému
  • Ukladanie kľúčov do databázy
Aktuálna ponuka
Školiace miesto
Jazyk kurzu

Uvedené ceny sú bez DPH.