Dela via


Översikt över ASP.NET Core

Av Daniel Roth, Rick Anderson, och Shaun Luttin

Not

Det här är inte den senaste versionen av den här artikeln. Den aktuella versionen finns i den .NET 9-versionen av den här artikeln.

Varning

Den här versionen av ASP.NET Core stöds inte längre. Mer information finns i .NET och .NET Core Support Policy. Den aktuella versionen av den här artikeln finns i .NET 9-versionen .

Viktig

Den här informationen gäller en förhandsversionsprodukt som kan ändras avsevärt innan den släpps kommersiellt. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, med avseende på den information som tillhandahålls här.

Du hittar information om den nuvarande utgåvan i versionen av .NET 9 av den här artikeln.

ASP.NET Core är ett plattformsoberoende, högpresterande ramverk med öppen källkod för att skapa moderna, molnaktiverade, Internetanslutna appar.

Med ASP.NET Core kan du:

  • Skapa webbappar och tjänster, Azure IoT (Sakernas Internet) appar och mobila serverdelar.
  • Använd dina favoritutvecklingsverktyg i Windows, macOS och Linux.
  • Distribuera till molnet eller lokalt.
  • Kör på .NET.

Varför välja ASP.NET Core?

Miljontals utvecklare använder eller har använt ASP.NET 4.x för att skapa webbappar. ASP.NET Core är en omdesign av ASP.NET 4.x, inklusive arkitektoniska ändringar som resulterar i ett smalare och mer modulärt ramverk.

ASP.NET Core ger följande fördelar:

Skapa webb-API:er och webbgränssnitt med ASP.NET Core MVC

ASP.NET Core MVC innehåller funktioner för att skapa webb-API:er och webbappar:

  • MVC-mönstret (Model-View-Controller) gör dina webb-API:er och webbappar testbara.
  • Razor Pages är en sidbaserad programmeringsmodell som gör det enklare och mer produktivt att skapa webbgränssnittet.
  • Razor ger en produktiv syntax för Razor Pages- och MVC-vyer.
  • Tag Helpers aktivera kod på serversidan för att delta i skapandet och återgivningen av HTML-element i Razor filer.
  • Inbyggt stöd för flera dataformat och innehållsförhandling gör att dina webb-API:er kan nå en mängd olika klienter, inklusive webbläsare och mobila enheter.
  • Modellbindning automatiskt mappar data från HTTP-begäranden till åtgärdsmetodparametrar.
  • Modellverifiering utför automatiskt validering på klientsidan och på serversidan.

Utveckling på klientsidan

ASP.NET Core innehåller Blazor för att skapa ett interaktivt webbgränssnitt och integreras även med andra populära JavaScript-ramverk som Angular, React, Vueoch Bootstrap. Mer information finns i ASP.NET Core Blazor och relaterade ämnen under utveckling på klientsidan.

ASP.NET Core-målramverk

ASP.NET Core 3.x eller senare kan endast rikta in sig på .NET.

Det finns flera fördelar med att rikta in sig på .NET, och dessa fördelar ökar för varje version. Några fördelar med .NET jämfört med .NET Framework är:

Vi rekommenderar följande sekvens med självstudier för en introduktion till att utveckla ASP.NET Core-appar:

  1. Följ en självstudiekurs för den apptyp som du vill utveckla eller underhålla.

    Apptyp Scenario Handledning
    Webbapp Ny utveckling av webbgränssnittet på serversidan Kom igång med Razor Pages
    Webbapp Underhålla en MVC-app Kom igång med MVC
    Webbapp Utveckling av webbgränssnitt på klientsidan Kom igång med Blazor
    Webb-API RESTful HTTP-tjänster Skapa ett webb-API
    App för fjärrproceduranrop Kontrakt först-tjänster med protokollbuffertar Kom igång med en gRPC-tjänst
    Realtidsapp Dubbelriktad kommunikation mellan servrar och anslutna klienter Kom igång med SignalR
  2. Följ en självstudiekurs som visar hur du utför grundläggande dataåtkomst.

    Scenario Handledning
    Ny utveckling Razor sidor med Entity Framework Core
    Underhålla en MVC-app MVC med Entity Framework Core
  3. Läs en översikt över grunderna i ASP.NET Core som gäller för alla apptyper.

  4. Bläddra i innehållsförteckningen efter andra intressanta ämnen.

†Det finns också en interaktiv webb-API-guide. Ingen lokal installation av utvecklingsverktyg krävs. Koden körs i en Azure Cloud Shell- i webbläsaren och curl- används för testning.

Migrera från .NET Framework

En referensguide för att migrera ASP.NET 4.x-appar till ASP.NET Core finns i Uppdatera från ASP.NET till ASP.NET Core.

ASP.NET Core är ett plattformsoberoende, högpresterande ramverk med öppen källkod för att skapa moderna, molnaktiverade, Internetanslutna appar. Med ASP.NET Core kan du:

Varför välja ASP.NET Core?

Miljontals utvecklare använder eller har använt ASP.NET 4.x för att skapa webbappar. ASP.NET Core är en omdesign av ASP.NET 4.x, med arkitektoniska ändringar som resulterar i ett smalare och mer modulärt ramverk.

ASP.NET Core ger följande fördelar:

Skapa webb-API:er och webbgränssnitt med ASP.NET Core MVC

ASP.NET Core MVC innehåller funktioner för att skapa webb-API:er och webbappar:

  • MVC-mönstret (Model-View-Controller) gör dina webb-API:er och webbappar testbara.
  • Razor Pages är en sidbaserad programmeringsmodell som gör det enklare och mer produktivt att skapa webbgränssnittet.
  • Razor ger en produktiv syntax för Razor Pages och MVC-vyer.
  • Tag Helpers aktivera kod på serversidan för att delta i skapandet och återgivningen av HTML-element i Razor filer.
  • Inbyggt stöd för flera dataformat och innehållsförhandling gör att dina webb-API:er kan nå en mängd olika klienter, inklusive webbläsare och mobila enheter.
  • Modellbindning automatiskt mappar data från HTTP-begäranden till åtgärdsmetodparametrar.
  • Modellverifiering utför automatiskt validering på klientsidan och på serversidan.

Utveckling på klientsidan

ASP.NET Core integreras sömlöst med populära ramverk och bibliotek på klientsidan, inklusive Blazor, Angular, React, Vueoch Bootstrap. Mer information finns i ASP.NET Core Blazor och relaterade ämnen under utveckling på klientsidan.

ASP.NET Core som riktar in sig på .NET Framework

ASP.NET Core 2.x kan rikta in sig på .NET Core eller .NET Framework. ASP.NET Core-appar som riktar sig mot .NET Framework är inte plattformsoberoende – de körs endast i Windows. I allmänhet består ASP.NET Core 2.x av .NET Standard-bibliotek. Bibliotek skrivna med .NET Standard 2.0 körs på alla .NET-plattform som implementerar .NET Standard 2.0.

ASP.NET Core 2.x stöds i .NET Framework-versioner som implementerar .NET Standard 2.0:

  • Den senaste versionen av .NET Framework rekommenderas.
  • .NET Framework 4.6.1 eller senare.

ASP.NET Core 3.0 eller senare körs endast på .NET Core. Mer information om den här ändringen finns i En första titt på ändringar som kommer i ASP.NET Core 3.0.

Det finns flera fördelar med att rikta in sig på .NET Core, och dessa fördelar ökar för varje version. Några fördelar med .NET Core jämfört med .NET Framework är:

För att minska API-gapet från .NET Framework till .NET Core Windows Compatibility Pack gjort tusentals API:er endast för Windows tillgängliga i .NET Core. Dessa API:er var inte tillgängliga i .NET Core 1.x.

Vi rekommenderar följande sekvens med självstudier och artiklar för en introduktion till att utveckla ASP.NET Core-appar:

  1. Följ en självstudiekurs för den typ av app som du vill utveckla eller underhålla.

    Apptyp Scenario Handledning
    Webbapp För ny utveckling Kom igång med Razor Pages
    Webbapp För att underhålla en MVC-app Kom igång med MVC
    Webb-API Skapa ett webb-API
    Realtidsapp Kom igång med SignalR
  2. Följ en självstudiekurs som visar hur du utför grundläggande dataåtkomst.

    Scenarie Handledning
    För ny utveckling Razor sidor med Entity Framework Core
    För att underhålla en MVC-app MVC med Entity Framework Core
  3. Läs en översikt över grunderna i ASP.NET Core som gäller för alla apptyper.

  4. Bläddra i innehållsförteckningen efter andra intressanta ämnen.

†Det finns också en webb-API-självstudie som du följer helt i webbläsaren, ingen lokal IDE-installation krävs. Koden körs i en Azure Cloud Shell-och curl- används för testning.

Migrera från .NET Framework

En referensguide för att migrera ASP.NET appar till ASP.NET Core finns i Uppdatera från ASP.NET till ASP.NET Core.

Så här laddar du ned ett exempel

Många av artiklarna och självstudierna innehåller länkar till exempelkod.

  1. Ladda ned zip-filen för ASP.NET-lagringsplatsen.
  2. Packa upp AspNetCore.Docs-main.zip-filen.
  3. Om du vill komma åt en artikels exempelapp på den uppackade lagringsplatsen använder du URL:en i artikelns exempellänk för att navigera till exempelmappen. Vanligtvis visas en artikels exempellänk överst i artikeln med länktexten Visa eller ladda ned exempelkod.

Förprocessordirektiv i exempelkod

För att demonstrera flera scenarier använder exempelappar direktiven #define och #if-#else/#elif-#endif förprocessor för att selektivt kompilera och köra olika delar av exempelkoden. För de exempel som använder den här metoden anger du #define-direktivet överst i C#-filerna för att definiera symbolen som är associerad med det scenario som du vill köra. Vissa exempel kräver att du definierar symbolen överst i flera filer för att kunna köra ett scenario.

Följande #define symbollista anger till exempel att fyra scenarier är tillgängliga (ett scenario per symbol). Aktuell exempelkonfiguration kör scenariot TemplateCode:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Om du vill ändra exemplet för att köra ExpandDefault scenariot definierar du ExpandDefault-symbolen och lämnar de återstående symbolerna utkommenterade:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Mer information om hur du använder C#-förprocessordirektiv för att selektivt kompilera kodavsnitt finns i #define (C#-referens) och #if (C#-referens).

Störande förändringar och säkerhetsmeddelanden

Förändringar som inte är bakåtkompatibla och säkerhetsrekommendationer rapporteras på lagringsplatsen för Meddelanden . Meddelanden kan begränsas till en viss version genom att välja ett Etikett filter.

Nästa steg

Mer information finns i följande resurser: