Omówienie ASP.NET Core

Daniel Roth, Rick Anderson i Shaun Luttin

ASP.NET Core to międzyplatformowa, wysokowydajna platforma typu open source do tworzenia nowoczesnych, połączonych z Internetem aplikacji z obsługą chmury.

Platforma ASP.NET Core umożliwia:

  • Tworzenie aplikacji internetowych i usług, aplikacji Internetu rzeczy (IoT) i zapleczy mobilnych.
  • Używanie ulubionych narzędzi programistycznych w systemach Windows, macOS i Linux.
  • Wdrażanie w chmurze lub lokalnie.
  • Uruchom polecenie na platformie .NET Core.

Dlaczego warto wybrać ASP.NET Core?

Miliony deweloperów używają lub używają ASP.NET 4.x do tworzenia aplikacji internetowych. ASP.NET Core jest przeprojektowany ASP.NET 4.x, w tym zmiany architektury, które powodują szczuplejsze, bardziej modułowe struktury.

Platforma ASP. NET Core oferuje następujące zalety:

Tworzenie internetowego interfejsu użytkownika i internetowych interfejsów API przy użyciu wzorca MVC platformy ASP.NET Core

Platforma ASP.NET Core MVC udostępnia funkcje, które umożliwiają tworzenie internetowych interfejsów API i aplikacji internetowych:

Programowanie po stronie klienta

ASP.NET Core bezproblemowo integruje się z popularnymi platformami i bibliotekami po stronie klienta, takimi jak Blazor, Angular, React i Bootstrap. Aby uzyskać więcej informacji, zobacz ASP.NET Core Blazor i powiązane tematy w obszarze Programowanie po stronie klienta.

ASP.NET Core platformy docelowe

ASP.NET Core 3.x i nowszych może być przeznaczony tylko dla platformy .NET Core. Ogólnie rzecz biorąc, ASP.NET Core składa się z bibliotek .NET Standard. Biblioteki napisane przy użyciu platformy .NET Standard 2.0 są uruchamiane na dowolnej platformie .NET implementujące platformę .NET Standard 2.0.

Jest kilka zalet przyjmowania platformy .NET Core jako docelowej, a ich liczba rośnie z każdym wydaniem. Niektóre z zalet platformy .NET Core nad platformą .NET Framework to:

  • Wieloplatformowość. Działa w systemach Windows, macOS i Linux.
  • Większa wydajność
  • Przechowywanie wersji obok siebie
  • Nowe interfejsy API
  • Technologia open source

Zalecamy wykonanie następujących sekwencji samouczków, aby zapoznać się z wprowadzeniem do tworzenia aplikacji ASP.NET Core:

  1. Postępuj zgodnie z samouczkiem dotyczącym typu aplikacji, który chcesz opracowywać lub obsługiwać.

    Typ aplikacji Scenariusz Samouczek
    Aplikacja internetowa Tworzenie nowego internetowego interfejsu użytkownika po stronie serwera Wprowadzenie do Razor stron
    Aplikacja internetowa Obsługa aplikacji MVC Wprowadzenie do wzorca MVC
    Aplikacja internetowa Tworzenie internetowego interfejsu użytkownika po stronie klienta Wprowadzenie do usługi Blazor
    Interfejs API sieci Web RESTful usług HTTP Tworzenie internetowego interfejsu API
    Aplikacja zdalnego wywołania procedury Usługi kontraktowe korzystające z buforów protokołu Wprowadzenie do usługi gRPC
    Aplikacja czasu rzeczywistego Dwukierunkowa komunikacja między serwerami a połączonymi klientami Wprowadzenie do usługi SignalR
  2. Postępuj zgodnie z samouczkiem, w którym pokazano, jak uzyskać podstawowy dostęp do danych.

    Scenariusz Samouczek
    Nowy projekt Razor Strony z programem Entity Framework Core
    Obsługa aplikacji MVC Wzorzec MVC z platformą Entity Framework Core
  3. Zapoznaj się z omówieniem ASP.NET Core podstaw, które mają zastosowanie do wszystkich typów aplikacji.

  4. Przejrzyj spis treści pod kątem innych interesujących tematów.

Interfejs jest również interaktywnym internetowym interfejsem API. Nie jest wymagana lokalna instalacja narzędzi programistycznych. Kod jest uruchamiany w usłudze Azure Cloud Shell w przeglądarce, a program curl jest używany do testowania.

Migrowanie z .NET Framework

Aby zapoznać się z przewodnikiem referencyjnym dotyczącym migrowania aplikacji ASP.NET 4.x do ASP.NET Core, zobacz Migrowanie z ASP.NET do ASP.NET Core.

ASP.NET Core to międzyplatformowa, wysokowydajna platforma typu open source do tworzenia nowoczesnych, połączonych z Internetem aplikacji z obsługą chmury. Platforma ASP.NET Core umożliwia:

  • Tworzenie aplikacji internetowych i usług, aplikacji Internetu rzeczy (IoT) i zapleczy mobilnych.
  • Używanie ulubionych narzędzi programistycznych w systemach Windows, macOS i Linux.
  • Wdrażanie w chmurze lub lokalnie.
  • Uruchamianie na platformie .NET Core lub .NET Framework.

Dlaczego warto wybrać ASP.NET Core?

Miliony deweloperów używają lub używają ASP.NET 4.x do tworzenia aplikacji internetowych. ASP.NET Core to przeprojektowana platforma ASP.NET 4.x, w której wprowadzono zmiany architektoniczne w celu stworzenia bardziej zwartej i modułowej struktury.

Platforma ASP. NET Core oferuje następujące zalety:

Tworzenie internetowego interfejsu użytkownika i internetowych interfejsów API przy użyciu wzorca MVC platformy ASP.NET Core

Platforma ASP.NET Core MVC udostępnia funkcje, które umożliwiają tworzenie internetowych interfejsów API i aplikacji internetowych:

Programowanie po stronie klienta

ASP.NET Core bezproblemowo integruje się z popularnymi platformami i bibliotekami po stronie klienta, takimi jak Blazor, Angular, React i Bootstrap. Aby uzyskać więcej informacji, zobacz ASP.NET Core Blazor i powiązane tematy w obszarze Programowanie po stronie klienta.

Platforma ASP.NET Core ukierunkowana na platformę .NET Framework

Platforma ASP.NET Core 2.x może jako cel mieć platformę .NET Core lub .NET Framework. ASP.NET Core aplikacje przeznaczone dla .NET Framework nie są wieloplatformowe — działają tylko w systemie Windows. Ogólnie rzecz biorąc, platforma ASP.NET Core 2.x jest zbudowana z bibliotek .NET Standard. Biblioteki napisane przy użyciu platformy .NET Standard 2.0 działają na dowolnej platformie .NET, która implementuje platformę .NET Standard 2.0.

ASP.NET Core 2.x jest obsługiwany w wersjach .NET Framework, które implementują program .NET Standard 2.0:

  • zaleca się .NET Framework najnowszą wersję.
  • Platforma .NET Framework 4.6.1 lub nowsza.

Platforma ASP.NET Core 3.0 i nowsze wersje będą działać tylko na platformie .NET Core. Aby uzyskać więcej informacji o tej zmianie, zobacz A first look at changes coming in ASP.NET Core 3.0 (Pierwsze spojrzenie na zmiany wprowadzane na platformie ASP.NET Core 3.0).

Jest kilka zalet przyjmowania platformy .NET Core jako docelowej, a ich liczba rośnie z każdym wydaniem. Niektóre z zalet platformy .NET Core nad platformą .NET Framework to:

  • Wieloplatformowość. Działa w systemach macOS, Linux i Windows.
  • Większa wydajność
  • Przechowywanie wersji obok siebie
  • Nowe interfejsy API
  • Technologia open source

Aby pomóc w zamknięciu luki interfejsu API od .NET Framework do platformy .NET Core, pakiet zgodności systemu Windows uczynił tysiące interfejsów API tylko dla systemu Windows dostępnych na platformie .NET Core. Te interfejsy API nie były dostępne na platformie .NET Core 1.x.

Przy rozpoczynaniu programowania aplikacji platformy ASP.NET Core zalecamy następujący zestaw samouczków i artykułów:

  1. Postępuj zgodnie z samouczkiem dotyczącym typu aplikacji, którą chcesz opracowywać lub obsługiwać.

    Typ aplikacji Scenariusz Samouczek
    Aplikacja internetowa Programowanie od nowa Rozpoczynanie pracy ze stronami Razor
    Aplikacja internetowa Konserwacja aplikacji MVC Wprowadzenie do wzorca MVC
    Interfejs API sieci Web Tworzenie internetowego interfejsu API
    Aplikacja czasu rzeczywistego Wprowadzenie do usługi SignalR
  2. Postępuj zgodnie z samouczkiem, w którym pokazano, jak wykonać podstawowy dostęp do danych.

    Scenariusz Samouczek
    Programowanie od nowa Razor Strony z platformą Entity Framework Core
    Konserwacja aplikacji MVC Wzorzec MVC z platformą Entity Framework Core
  3. Zapoznaj się z omówieniem podstaw ASP.NET Core, które mają zastosowanie do wszystkich typów aplikacji.

  4. Przeglądaj spis treści, aby znaleźć inne interesujące tematy.

Instruktaż internetowego interfejsu API, który jest w całości obserwowany w przeglądarce, nie jest wymagana lokalna instalacja środowiska IDE. Kod jest wykonywany w usłudze Azure Cloud Shell, a do testowania służy narzędzie curl.

Migrowanie z .NET Framework

Aby zapoznać się z przewodnikiem referencyjnym dotyczącym migrowania aplikacji ASP.NET do ASP.NET Core, zobacz Migrowanie z ASP.NET do ASP.NET Core.

Instrukcje: pobieranie pliku

Wiele artykułów i samouczków zawiera linki do kodu przykładowego.

  1. Pobierz plik zip repozytorium ASP.NET.
  2. Rozpakuj AspNetCore.Docs-main.zip plik.
  3. Aby uzyskać dostęp do przykładowej aplikacji artykułu w rozpakowanym repozytorium, użyj adresu URL w przykładowym linku artykułu, aby ułatwić przejście do folderu przykładu. Zazwyczaj przykładowy link artykułu znajduje się w górnej części artykułu z tekstem linku Wyświetl lub pobierz przykładowy kod.

Dyrektywy preprocesora w przykładowym kodzie

Aby zademonstrować wiele scenariuszy, przykładowe aplikacje używają #define dyrektyw preprocesora i #if-#else/#elif-#endif do selektywnego kompilowania i uruchamiania różnych sekcji przykładowego kodu. W przypadku tych przykładów, które korzystają z tego podejścia, ustaw dyrektywę #define w górnej części plików języka C#, aby zdefiniować symbol skojarzony ze scenariuszem, który chcesz uruchomić. Niektóre przykłady wymagają zdefiniowania symbolu w górnej części wielu plików w celu uruchomienia scenariusza.

Na przykład następująca lista symboli #define wskazuje, że są dostępne cztery scenariusze (jeden scenariusz na symbol). Aktualna konfiguracja przykładu powoduje uruchomienie scenariusza TemplateCode:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Aby zmienić przykład w celu uruchomienia scenariusza ExpandDefault, zdefiniuj symbol ExpandDefault i pozostaw pozostałe symbole jako przekształcone w komentarz:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Więcej informacji na temat używania dyrektyw preprocesora języka C# do selektywnego kompilowania sekcji kodu można znaleźć w tematach #define (C# Reference) (#define (odwołanie w języku C#)) i #if (C# Reference) (#if (odwołanie w języku C#)).

Regiony w przykładowym kodzie

Niektóre przykładowe aplikacje zawierają sekcje kodu otoczone dyrektywami #region i #endregion C#. System tworzenia dokumentacji wstawia te regiony do renderowanych tematów dokumentacji.

Nazwy regionów zwykle zawierają słowo "fragment kodu". W poniższym przykładzie przedstawiono region o nazwie snippet_WebHostDefaults:

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

Wcześniejszy fragment kodu w języku C# jest przywoływany w pliku markdown tematu za pomocą następującego wiersza:

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

Możesz bezpiecznie zignorować (lub usunąć) #region dyrektywy i #endregion , które otaczają kod. Nie zmieniaj kodu w tych dyrektywach, jeśli planujesz uruchomić przykładowe scenariusze opisane w temacie. Kod możesz swobodnie modyfikować, eksperymentując z innymi scenariuszami.

Aby uzyskać więcej informacji, zobacz Współtworzenie dokumentacji platformy ASP.NET: fragmenty kodu.

Zmiany powodujące niezgodność i biuletyny zabezpieczeń

Zmiany powodujące niezgodność i biuletyny zabezpieczeń są zgłaszane w repozytorium Anonsy. Ogłoszenia mogą być ograniczone do określonej wersji, wybierając filtr Etykieta .

Następne kroki

Więcej informacji można znaleźć w następujących zasobach: