Přehled ASP.NET Core
Autoři: Daniel Roth, Rick Anderson a Shaun Luttin
Poznámka:
Toto není nejnovější verze tohoto článku. Aktuální verzi najdete v tomto článku ve verzi .NET 9.
Upozorňující
Tato verze ASP.NET Core se už nepodporuje. Další informace najdete v tématu .NET a .NET Core Zásady podpory. Aktuální verzi najdete ve verzi .NET 8 tohoto článku.
Důležité
Tyto informace se týkají předběžného vydání produktu, který může být podstatně změněn před komerčním vydáním. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Aktuální verzi najdete v tomto článku ve verzi .NET 9.
ASP.NET Core je multiplatformní opensourcová opensourcová architektura pro vytváření moderních cloudových aplikací připojených k internetu.
S ASP.NET Core můžete:
- Vytvářejte webové aplikace a služby, aplikace Internetu 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.
Proč zvolit ASP.NET Core?
Miliony vývojářů používají nebo použili ASP.NET 4.x k vytváření webových aplikací. ASP.NET Core je návrh ASP.NET 4.x, včetně změn architektury, které vedou ke štíhlým a modulárním architekturou.
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.
- Navrženo pro testování.
- Razor Stránky usnadňují a produktivnější scénáře zaměřené na psaní stránek.
- Blazor umožňuje používat jazyk C# v prohlížeči spolu s JavaScriptem. Sdílejte logiku aplikace na straně serveru a na straně klienta, která je napsaná pomocí .NET.
- Schopnost vyvíjet a spouštět ve Windows, macOS a Linuxu
- 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 hostování na následujících zařízeních:
- Souběžná správa verzí.
- 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:
- Vzor Model-View-Controller (MVC) přispívá k tomu, aby vaše webová rozhraní API a webové aplikace byly testovatelné.
- Razor Pages je programovací model založený na stránkách, který usnadňuje a zvyšuje produktivitu vytváření webového uživatelského rozhraní.
- Razormarkup poskytuje produktivní syntaxi pro Razor zobrazení Pages a MVC.
- Pomocné rutiny značek umožňují, aby se kód na straně serveru v souborech Razor podílel na vytváření a vykreslování elementů HTML.
- Díky integrované podpoře různých datových formátů a vyjednávání obsahu mohou vaše webová rozhraní API používat různí klienti, včetně prohlížečů a mobilních zařízení.
- Vazby modelu automaticky mapují data požadavků HTTP na parametry metod akce.
- Ověření modelu automaticky provede ověření na straně klienta i serveru.
Vývoj klientské strany
ASP.NET Core zahrnuje Blazor vytváření bohatého interaktivního webového uživatelského rozhraní a také se integruje s dalšími oblíbenými front-endovými javascriptovými architekturami, jako jsou Angular, React, Vue a Bootstrap. Další informace najdete v tématu ASP.NET Core Blazor a související témata v části Vývoj na straně klienta.
ASP.NET základní cílové architektury
ASP.NET Core 3.x nebo novější můžou cílit jenom na .NET.
Cílení na .NET má několik výhod a tyto výhody se s každou verzí zvyšují. Mezi výhody rozhraní .NET oproti rozhraní .NET Framework patří:
- Mutliplatformní: Běží ve Windows, macOS a Linuxu.
- Zlepšení výkonu
- Souběžná správa verzí
- Nová rozhraní API
- Open source
Doporučený studijní program
Pro úvod k vývoji aplikací ASP.NET Core doporučujeme následující posloupnost kurzů:
Postupujte podle kurzu pro typ aplikace, který chcete vyvíjet nebo udržovat.
Typ aplikace Scénář Kurz Webová aplikace Nový vývoj webového uživatelského rozhraní na straně serveru Začínáme se stránkami Razor 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 RESTful HTTP Vytvoření webového rozhraní API† Aplikace Vzdálené volání procedur Služby první kontrakty 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 Postupujte podle kurzu, který ukazuje, jak provádět základní přístup k datům.
Scénář Kurz Nový vývoj Razor Stránky s Entity Framework Core Údržba aplikace MVC MVC pomocí Entity Framework Core Přečtěte si přehled základních ASP.NET core, které platí pro všechny typy aplikací.
Projděte si obsah a vyhledejte další zajímavá témata.
†Interaktivní kurz webového rozhraní API. Nevyžaduje se žádná místní instalace vývojových nástrojů. Kód běží v Azure Cloud Shellu v prohlížeči a curl se používá k testování.
Migrace z rozhraní .NET Framework
Referenční průvodce migrací aplikací ASP.NET 4.x na ASP.NET Core najdete v tématu Aktualizace z ASP.NET na ASP.NET Core.
ASP.NET Core je multiplatformní opensourcová opensourcová architektura pro vytváření moderních cloudových aplikací připojených k internetu. S ASP.NET Core můžete:
- Vytvářejte webové aplikace a služby, aplikace Internetu 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žili 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.
- Navrženo pro testování.
- Razor Stránky usnadňují a produktivnější scénáře zaměřené na psaní stránek.
- Blazor umožňuje používat jazyk C# v prohlížeči spolu s JavaScriptem. Sdílejte logiku aplikace na straně serveru a na straně klienta, která je napsaná pomocí .NET.
- Schopnost vyvíjet a spouštět ve Windows, macOS a Linuxu
- 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 hostování na následujících zařízeních:
- Souběžná správa verzí.
- 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:
- Vzor Model-View-Controller (MVC) přispívá k tomu, aby vaše webová rozhraní API a webové aplikace byly testovatelné.
- Razor Pages je programovací model založený na stránkách, který usnadňuje a zvyšuje produktivitu vytváření webového uživatelského rozhraní.
- Razormarkup poskytuje produktivní syntaxi pro Razor zobrazení Pages a MVC.
- Pomocné rutiny značek umožňují, aby se kód na straně serveru v souborech Razor podílel na vytváření a vykreslování elementů HTML.
- Díky integrované podpoře různých datových formátů a vyjednávání obsahu mohou vaše webová rozhraní API používat různí klienti, včetně prohlížečů a mobilních zařízení.
- Vazby modelu automaticky mapují data požadavků HTTP na parametry metod akce.
- Ověření modelu automaticky provede ověření na straně klienta i serveru.
Vývoj klientské strany
ASP.NET Core se bezproblémově integruje s oblíbenými architekturami a knihovnami na straně klienta, včetně Blazor, Angular, React, Vue a Bootstrap. Další informace najdete v tématu ASP.NET Core Blazor a související témata 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. ASP.NET základní aplikace, které cílí na .NET Framework, nejsou multiplatformní – běží jenom ve Windows. ASP.NET Core 2.x se obecně skládá z knihoven .NET Standard. Knihovny napsané pomocí .NET Standard 2.0 běží na libovolné platformě .NET, která implementuje .NET Standard 2.0.
ASP.NET Core 2.x se podporuje ve verzích rozhraní .NET Framework, které implementují .NET Standard 2.0:
- Doporučuje se nejnovější verze rozhraní .NET Framework.
- .NET Framework 4.6.1 nebo novější.
ASP.NET Core 3.0 nebo novější běží jenom v .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.
- Zlepšení výkonu
- Souběžná správa verzí
- Nová rozhraní API
- Open source
Aby bylo možné lépe zavřít mezeru rozhraní API od rozhraní .NET Framework do .NET Core, sada Windows Compatibility Pack zpřístupnil tisíce rozhraní API jen pro Windows v .NET Core. Tato rozhraní API nebyla v .NET Core 1.x dostupná.
Doporučený studijní program
Jako úvod do vývoje aplikací ASP.NET Core doporučujeme následující posloupnost kurzů a článků:
Postupujte podle kurzu pro typ aplikace, kterou chcete vyvíjet nebo udržovat.
Typ aplikace Scénář Kurz Webová aplikace Vývoj nové aplikace Začínáme se stránkami Razor 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 Postupujte podle kurzu, který ukazuje, jak provádět základní přístup k datům.
Scénář Kurz Vývoj nové aplikace Razor Stránky s Entity Framework Core Údržba aplikace MVC MVC pomocí Entity Framework Core Přečtěte si přehled základních ASP.NET core, které platí pro všechny typy aplikací.
Projděte obsah a najděte další témata, která vás zajímají.
†Požaduje se také kurz webového rozhraní API, který budete sledovat zcela v prohlížeči, nevyžaduje se žádná místní instalace integrovaného vývojového prostředí ( IDE). Kód běží v prostředí Azure Cloud Shell a k testování se používá curl.
Migrace z rozhraní .NET Framework
Referenční průvodce migrací aplikací ASP.NET na ASP.NET Core najdete v tématu Aktualizace z ASP.NET na ASP.NET Core.
Jak si stáhnout ukázku
Řada článků a kurzů obsahuje odkazy na vzorový kód.
- Stáhněte si soubor zip úložiště ASP.NET.
- Rozbalte
AspNetCore.Docs-main.zip
soubor. - 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. Obvykle se v horní části článku zobrazí ukázkový odkaz s textem odkazu Zobrazení nebo stažením ukázkového kódu.
Direktivy preprocesoru ve vzorovém kódu
K předvedení více scénářů používají #define
ukázkové aplikace direktivy preprocesoru k selektivní kompilaci a #if-#else/#elif-#endif
spouštění různých částí vzorového kódu. U ukázek, které tento přístup využívají, nastavte #define
direktivu v horní části souborů C# tak, aby definovala symbol přidružený ke scénáři, 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#).
Zásadní změny a poradce pro zabezpečení
V úložišti Oznámení se zobrazují zásadní změny a informační zpravodaje zabezpečení. Oznámení můžou být omezena na konkrétní verzi výběrem filtru Popisek .
Další kroky
Další informace naleznete v následujících zdrojích:
- Začínáme s ASP.NET Core
- Publikování aplikace ASP.NET Core do Azure s využitím sady Visual Studio
- Základy ASP.NET Core
- Týdenní přehled novinek v komunitě ASP.NET se zabývá pokrokem v týmových projektech a týmovými plány. Nabízí nové blogové příspěvky a software třetích stran.