Cvičení – vytvoření projektu webové aplikace ASP.NET Core ze šablony

Dokončeno

V tomto cvičení:

  • Ze šablony vytvořte projekt webové aplikace ASP.NET Core.
  • Prozkoumejte strukturu vytvořeného projektu.

Vytvoření webové aplikace ASP.NET Core pomocí šablony

V editoru Visual Studio Code vytvořte nový projekt:

  1. Vyberte zobrazení Průzkumníka:

    Snímek obrazovky s výběrem zobrazení Průzkumníka

  2. Vyberte tlačítko Vytvořit projekt .NET. Alternativně můžete vytvořit paletu příkazů pomocí + a pak zadáním "+" najít a vybrat

    Snímek obrazovky s výběrem možnosti Vytvořit projekt .NET

  3. Ze seznamu vyberte šablonu projektu ASP.NET Core Empty.

  4. V dialogovém okně Umístění projektu vytvořte složku s názvem MyWebApp , která bude obsahovat projekt.

  5. V paletě příkazů pojmenujte projekt MyWebApp, včetně odpovídající velká písmena. Použití tohoto přesného názvu projektu je důležité k zajištění, aby obory názvů pro kód v této instrukci odpovídaly vašim.

  6. V paletě příkazů vyberte Vytvořit projekt.

Prozkoumání struktury projektu

Obsah složky projektu MyWebApp se zobrazí v Průzkumníku editoru Visual Studio Code:

Snímek obrazovky se soubory projektu v Průzkumníku editoru Visual Studio Code

Z terminálu nebo příkazového řádku vytvořte nový projekt:

  1. Přejděte do adresáře (cd), který bude obsahovat projekt.

  2. Spuštěním příkazu .NET CLI vytvořte webovou aplikaci ASP.NET Core v adresáři s názvem dotnet new:

    dotnet new web -o MyWebApp
    

    V adresáři s názvem MyWebApp se vytvoří nový ASP.NET prázdný webový projekt Core.

    Následující příklad popisuje syntaxi příkazu:

    • dotnet new: Příkaz .NET CLI pro vytváření různých artefaktů vývoje .NET založených na šablonách, jako jsou projekty, řešení, knihovny, konfigurace a další specializované soubory.
    • web: Šablona projektu používaná k vytvoření prázdného webového projektu ASP.NET Core, která neobsahuje žádný ukázkový obsah. webje jednou z mnoha předdefinovaných šablon projektů dostupných v sadě .NET SDK.
    • -o: Výstupní možnost určuje adresář, ve kterém je vytvořen nový projekt:
      • Pokud adresář neexistuje, rozhraní příkazového řádku .NET ho vytvoří.
      • Adresář, ve kterém je projekt vytvořen, slouží jako výchozí název projektu, obor názvů a název sestavení (název zkompilovaného výstupu).
      • Pokud se možnost -o <directory> výstupu nepoužívá, použije se aktuální adresář.
  3. Otevřete složku projektu MyWebApp.

Prozkoumání struktury projektu

Obsah složky projektu MyWebApp se zobrazí v Průzkumníku editoru Visual Studio Code:

Snímek obrazovky se soubory projektu v Průzkumníku editoru Visual Studio Code

Následující části obsahují přehled hlavních složek projektu a souborů prázdného projektu ASP.NET Core:

Soubor projektu MyWebApp.csproj

Soubor projektu .csproj slouží k:

  • Konfigurace postupu sestavení projektu
  • Určení verze rozhraní .NET, která se má cílit
  • Správa závislostí projektu

Soubor řešení .sln

Při vytvoření nebo otevření projektu ASP.NET Core v editoru Visual Studio Code (s příponou C# Dev Kit) se vytvoří soubor řešení [název projektu].sln . Soubor řešení [název projektu].sln obsahuje informace pro jeden nebo více souvisejících projektů, včetně informací o sestavení, nastavení a všech různých souborů, které nejsou přidružené jenom k jednomu konkrétnímu projektu.

Složka obj

Složka obj obsahuje zprostředkující soubory používané systémem sestavení, včetně zkompilovaných souborů objektů vygenerovaných ze zdrojových souborů. Konečný výstup sestavení se umístí do bin složky vytvořené během procesu sestavení.

Soubor Vlastnosti/launchSettings.json

Soubor Properties/launchSettings.json obsahuje konfigurační data pro způsob spuštění aplikace během vývoje. Tato nastavení zahrnují applicationUrl vlastnost, která určuje kořenovou adresu URL, kterou aplikace používá, například https://localhost:{port}, kde {port} je náhodné číslo místního portu přiřazené při vytváření projektu.

Soubor launchSettings.json obsahuje následující konfiguraci:

{
  "$schema": "https://json.schemastore.org/launchsettings.json",
  "profiles": {
    "http": {
      "commandName": "Project",
      "dotnetRunMessages": true,
      "launchBrowser": true,
      "applicationUrl": "http://localhost:5218",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "https": {
      "commandName": "Project",
      "dotnetRunMessages": true,
      "launchBrowser": true,
      "applicationUrl": "https://localhost:7140;http://localhost:5218",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

Soubor Program.cs

Soubor Program.cs slouží jako vstupní bod pro aplikaci ASP.NET Core a má několik klíčových účelů, mezi které patří:

  • Konfigurace hostitele: Nakonfiguruje hostitele, včetně nastavení webového serveru.
  • Registrace služby: Přidává služby do funkcí aplikace, jako jsou kontexty databáze, protokolování a specializované služby pro konkrétní architektury.
  • Konfigurace kanálu middlewaru: Definuje kanál zpracování požadavků aplikace jako řadu instancí middlewaru.
  • Konfigurace prostředí: Nastaví nastavení specifická pro prostředí pro vývoj, přípravu a produkci.

V novém prázdném projektu ASP.NET Core, který jste vytvořili, soubor Program.cs obsahuje následující minimální kód:

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

app.MapGet("/", () => "Hello World!");

app.Run();

Následující řádky kódu v tomto souboru vytvoří WebApplicationBuilder předkonfigurované výchozí hodnoty a sestaví aplikaci:

var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();

Metoda app.MapGet() přímo definuje koncový bod, který zpracovává požadavky HTTP GET:

app.MapGet("/", () => "Hello World!");

app.MapGet("/"): Definuje trasu pro požadavek HTTP GET. Označuje / , že tato trasa odpovídá na požadavky provedené na kořenové adrese URL aplikace. Například http://localhost:{port}/, kde {port} je náhodně přiřazené číslo portu přiřazené v souboru Properties/launchSettings.json při vytváření projektu.

() => "Hello World!": Výraz lambda, který slouží jako obslužná rutina požadavku. Při provedení požadavku GET na kořenovou adresu URL se tento výraz lambda spustí a vrátí řetězec "Hello World!".