Úvod do ASP.NET Core

Autoři: Daniel Roth, Rick Anderson a Shaun Luttin

ASP.NET Core je vysoce výkonná open-source platforma pro různé platformy, která umožňuje vytvářet moderní cloudové aplikace připojené k internetu. S ASP.NET Core můžete:

  • Sestavujte webové aplikace a služby, aplikace Internet věcí (IoT) a mobilní back-endy.
  • Používat oblíbené vývojářské nástroje v systémech Windows, Mac OS a Linux.
  • Nasazovat v cloudu nebo místně
  • Spusťte v .NET Core.

Proč zvolit ASP.NET Core?

miliony vývojářů používají nebo používali ASP.NET 4. x k vytváření webových aplikací. ASP.NET Core je předesignem ASP.NET 4. x, včetně změn architektury, jejichž výsledkem je štíhlá a větší modulární architektura.

ASP.NET Core nabízí následující výhody:

  • Jednotné prostředí pro vytváření webového uživatelského rozhraní a webových rozhraní API.
  • Je na architektuě pro testovatelnost.
  • Razor Stránky usnadňují a produktivnější kódování scénářů zaměřených na stránky.
  • Blazor umožňuje používat jazyk C# v prohlížeči společně s JavaScriptem. Sdílejte logiku aplikace na straně serveru i na straně klienta, a to vše napsané pomocí .NET.
  • Schopnost vyvíjet a spouštět v systémech Windows, macOS a Linux.
  • Architektura zaměřená na open-source a komunitu
  • Integrace moderní architektury klienta a vývojových pracovních postupů
  • Podpora hostování služeb vzdáleného volání procedur (RPC) pomocí gRPC.
  • Konfigurační systém založený na prostředí, který je připravený pro cloud.
  • Integrovaná injektáž závislostí.
  • Odlehčený, vysoce výkonný, modulární kanál požadavků HTTP
  • Možnost hostovat v následujících prostředích:
  • Side-by-side versioning.
  • Nabízí nástroje, které usnadňují vývoj moderních webů.

Vytváření webových rozhraní API a webového uživatelského rozhraní v ASP.NET Core MVC

Architektura ASP.NET Core MVC nabízí funkce umožňující vytvářet webová rozhraní API a webové aplikace:

Vývoj klientské strany

ASP.NET Core se hladce integruje s oblíbenými architekturami a knihovnami na straně klienta, včetně Blazor , Angular, Reacta Bootstrap. Další informace najdete v tématech Úvod do ASP.NET Core Blazor a souvisejících tématech v části vývoj na straně klienta.

ASP.NET Core cílové architektury

ASP.NET Core 3. x a novější může cílit jenom na .NET Core. obecně se ASP.NET Core skládá z knihoven .NET Standard . Knihovny napsané pomocí .NET Standard 2,0 běží na libovolné platformě .NET, která implementuje .NET Standard 2,0.

Cílení na .NET Core má několik výhod, které přibývají s každou vydanou verzí. Mezi výhody .NET Core oproti .NET Framework patří:

pro úvod k vývoji ASP.NET Corech aplikací doporučujeme následující posloupnost kurzů:

  1. Postupujte podle kurzu pro typ aplikace, který chcete vyvíjet nebo udržovat.

    Typ aplikace Scenario Kurz
    Webová aplikace Nový vývoj webového uživatelského rozhraní na straně serveru Začínáme se Razor stránkami
    Webová aplikace Údržba aplikace MVC Začínáme s MVC
    Webová aplikace Vývoj webového uživatelského rozhraní na straně klienta Začínáme s Blazor
    Webové rozhraní API Služby HTTP RESTful Vytvoření webového rozhraní API
    Aplikace vzdáleného volání procedur Služby pro první kontrakt využívající vyrovnávací paměti protokolu Začínáme se službou gRPC
    Aplikace v reálném čase Obousměrná komunikace mezi servery a připojenými klienty Začínáme s SignalR
  2. Postupujte podle kurzu, který ukazuje, jak získat základní přístup k datům.

    Scenario Kurz
    Nový vývoj Razor Stránky s Entity Framework Core
    Údržba aplikace MVC MVC pomocí Entity Framework Core
  3. přečtěte si přehled ASP.NET Core základních součástí, které se vztahují na všechny typy aplikací.

  4. Projděte si obsah a vyhledejte další témata, která vás zajímají.

†K dispozici je také Interaktivní kurz webového rozhraní API. Není nutná žádná místní instalace vývojářských nástrojů. Kód se spouští v Azure Cloud Shell v prohlížeči a k testování se používá kudrlinkou .

Migrace z .NET Framework

referenční příručka pro migraci aplikací ASP.NET 4. x do ASP.NET Core najdete v tématu Migrace z ASP.NET na ASP.NET Core .

ASP.NET Core je vysoce výkonná open-source platforma pro různé platformy, která umožňuje vytvářet moderní cloudové aplikace připojené k internetu. S ASP.NET Core můžete:

  • Sestavujte webové aplikace a služby, aplikace Internet věcí (IoT) a mobilní back-endy.
  • Používat oblíbené vývojářské nástroje v systémech Windows, Mac OS a Linux.
  • Nasazovat v cloudu nebo místně
  • Používat ke spuštění .NET Core nebo .NET Framework.

Proč zvolit ASP.NET Core?

miliony vývojářů používají nebo používali ASP.NET 4. x k vytváření webových aplikací. ASP.NET Core je přepracovanou verzí ASP.NET 4.x se změněnou architekturou. Výsledkem je odlehčené a modulárnější prostředí.

ASP.NET Core nabízí následující výhody:

  • Jednotné prostředí pro vytváření webového uživatelského rozhraní a webových rozhraní API.
  • Je na architektuě pro testovatelnost.
  • Razor Stránky usnadňují a produktivnější kódování scénářů zaměřených na stránky.
  • Blazor umožňuje používat jazyk C# v prohlížeči společně s JavaScriptem. Sdílejte logiku aplikace na straně serveru i na straně klienta, a to vše napsané pomocí .NET.
  • Schopnost vyvíjet a spouštět v systémech Windows, macOS a Linux.
  • Architektura zaměřená na open-source a komunitu
  • Integrace moderní architektury klienta a vývojových pracovních postupů
  • Podpora hostování služeb vzdáleného volání procedur (RPC) pomocí gRPC.
  • Konfigurační systém založený na prostředí, který je připravený pro cloud.
  • Integrovaná injektáž závislostí.
  • Odlehčený, vysoce výkonný, modulární kanál požadavků HTTP
  • Možnost hostovat v následujících prostředích:
  • Side-by-side versioning.
  • Nabízí nástroje, které usnadňují vývoj moderních webů.

Vytváření webových rozhraní API a webového uživatelského rozhraní v ASP.NET Core MVC

Architektura ASP.NET Core MVC nabízí funkce umožňující vytvářet webová rozhraní API a webové aplikace:

Vývoj klientské strany

ASP.NET Core se hladce integruje s oblíbenými architekturami a knihovnami na straně klienta, včetně Blazor , Angular, Reacta Bootstrap. Další informace najdete v tématech Úvod do ASP.NET Core Blazor a souvisejících tématech v části vývoj na straně klienta.

Cílení ASP.NET Core na .NET Framework

Cílem ASP.NET Core 2.x může být .NET Core nebo .NET Framework. Aplikace ASP.NET Core, jejichž cílem je .NET Framework, nejsou multiplatformní, ale běží jen ve Windows. ASP.NET Core 2.x se obecně skládá z knihoven .NET Standard. Knihovny napsané s .NET Standard 2.0 běží na libovolné platformě .NET, která implementuje .NET Standard 2.0.

ASP.NET Core Verze 2.x se podporuje ve .NET Framework, které implementují .NET Standard 2.0:

  • .NET Framework se nejnovější verze.
  • .NET Framework 4.6.1 a novější.

ASP.NET Core 3.0 a novější poběží jenom na platformě .NET Core. Další podrobnosti týkající se této změny najdete v tématu A first look at changes coming in ASP.NET Core 3.0 (První pohled na změny, které přináší ASP.NET Core 3.0).

Cílení na .NET Core má několik výhod, které přibývají s každou vydanou verzí. Mezi výhody .NET Core oproti .NET Framework patří:

  • Mutliplatformní: Běží v systémech macOS, Linux a Windows.
  • Vyšší výkon
  • Souběžná správa verzí
  • Nová rozhraní API
  • Open source

Sada Windows Compatibility Pack pomáhá uzavřít mezeru v rozhraních API z .NET Framework na .NET Core a Windows rozhraní API, která jsou dostupná jenom pro .NET Core. Tato rozhraní API nebyla v .NET Core 1.x dostupná.

Jako úvod do vývoje aplikací ASP.NET Core doporučujeme následující posloupnost kurzů a článků:

  1. Postupujte podle kurzu pro typ aplikace, kterou chcete vyvíjet nebo udržovat.

    Typ aplikace Scenario Kurz
    Webová aplikace Vývoj nové aplikace Začínáme se Razor stránkami
    Webová aplikace Údržba aplikace MVC Začínáme s MVC
    Webové rozhraní API Vytvoření webového rozhraní API
    Aplikace v reálném čase Začínáme s SignalR
  2. Postupujte podle kurzu, který ukazuje, jak provést základní přístup k datům.

    Scenario Kurz
    Vývoj nové aplikace Razor Stránky s Entity Framework Core
    Údržba aplikace MVC MVC pomocí Entity Framework Core
  3. Přečtěte si přehled základních ASP.NET Core, které platí pro všechny typy aplikací.

  4. Projděte obsah a najděte další témata, která vás zajímají.

†K dispozici je také kurz webového rozhraní API, kterýplně dodržujete v prohlížeči, a nevyžaduje se instalace místního integrovaného vývojového prostředí. Kód běží v prostředí Azure Cloud Shell a k testování se používá curl.

Migrace z .NET Framework

Referenční příručku k migraci aplikací ASP.NET na ASP.NET Core najdete v tématu Migrace z ASP.NET na ASP.NET Core .

Jak si stáhnout ukázku

Řada článků a kurzů obsahuje odkazy na vzorový kód.

  1. Stáhněte si soubor zip úložiště ASP.NET.
  2. Rozbalte AspNetCore.Docs-main.zip soubor .
  3. Pokud chcete získat přístup k ukázkové aplikaci článku v rozbaleném úložišti, použijte adresu URL v ukázkovém odkazu článku, která vám pomůže přejít do složky ukázky. V horní části článku se obvykle zobrazí ukázkový odkaz článku s textem odkazu View or download sample code (Zobrazení nebo stažení ukázkového kódu).

Direktivy preprocesoru ve vzorovém kódu

Pro demonstraci více scénářů používají ukázkové aplikace direktivy preprocesoru a k selektivní kompilaci a spuštění #define #if-#else/#elif-#endif různých částí vzorového kódu. Pro ukázky, které využívají tento přístup, nastavte direktivu v horní části souborů jazyka C# tak, aby definujte symbol přidružený ke scénáři, #define který chcete spustit. Některé ukázky vyžadují definování symbolu v horní části více souborů, aby bylo možné spustit scénář.

Například následující seznam symbolů #define udává, že jsou dostupné čtyři scénáře (jeden scénář na symbol). Při aktuální konfiguraci ukázky se spustí scénář TemplateCode:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Pokud chcete ukázku změnit tak, aby se spustil scénář ExpandDefault, definujte symbol ExpandDefault a zbývající symboly nechejte zakomentované:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Další informace o používání direktiv preprocesoru C# k selektivní kompilaci částí kódu najdete v článku #define (referenční dokumentace jazyka C# ) a #if (referenční dokumentace jazyka C#).

Oblasti ve vzorovém kódu

Některé ukázkové aplikace obsahují oddíly kódu obklopené #region a #endregion C#. Systém pro sestavování dokumentace vkládá tyto oblasti do zobrazených témat dokumentace.

Názvy oblastí obvykle obsahují slovo „snippet“. Následující příklad ukazuje oblast s názvem snippet_WebHostDefaults:

#region snippet_WebHostDefaults
Host.CreateDefaultBuilder(args)
    .ConfigureWebHostDefaults(webBuilder =>
    {
        webBuilder.UseStartup<Startup>();
    });
#endregion

Na předchozí fragment kódu C# odkazuje soubor Markdown tohoto tématu pomocí následujícího řádku:

[!code-csharp[](sample/SampleApp/Program.cs?name=snippet_WebHostDefaults)]

Direktivy a obklopující kód můžete bezpečně #region #endregion ignorovat (nebo odebrat). Pokud plánujete spustit ukázkové scénáře popsané v tématu, neměňte kód v rámci těchto direktiv. Při experimentování s jinými scénáři můžete tento kód klidně pozměnit.

Další informace najdete v článku Příspěvky k dokumentaci rozhraní ASP.NET: fragmenty kódu.

Rozbíjení změn a doporučení pro zabezpečení

Rozbíjení změn a doporučení k zabezpečení se hlásí v repo Oznámení. Oznámení je možné omezit na konkrétní verzi výběrem filtru Popisek.

Další kroky

Další informace naleznete v následujících zdrojích: