Delen via


Configuratie migreren naar ASP.NET Core

In het vorige artikel zijn we begonnen met het migreren van een ASP.NET MVC-project naar ASP.NET Core MVC. In dit artikel migreren we de configuratie.

Voorbeeldcode bekijken of downloaden (hoe download je)

Configuratie instellen

ASP.NET Core maakt niet langer gebruik van de global.asax - en web.config bestanden die in eerdere versies van ASP.NET worden gebruikt. In de eerdere versies van ASP.NET werd de opstartlogica van de toepassing in een Application_StartUp methode binnen Global.asax geplaatst. Later werd in ASP.NET MVC een Startup.cs bestand opgenomen in de hoofdmap van het project en werd het aangeroepen toen de toepassing werd gestart. ASP.NET Core heeft deze aanpak volledig overgenomen door alle opstartlogica in het Startup.cs bestand te plaatsen.

Het web.config-bestand is ook vervangen in ASP.NET Core. Configuratie zelf kan nu worden geconfigureerd, als onderdeel van de opstartprocedure van de toepassing die wordt beschreven in Startup.cs. Configuratie kan nog steeds GEBRUIKMAKEN van XML-bestanden, maar meestal ASP.NET Core-projecten configuratiewaarden in een bestand met JSON-indeling plaatsen, zoals appsettings.json. ASP.NET Core-configuratiesysteem heeft ook eenvoudig toegang tot omgevingsvariabelen, die een veiligere en robuustere locatie voor omgevingsspecifieke waarden kunnen bieden. Dit geldt met name voor geheimen zoals verbindingsreeksen en API-sleutels die niet moeten worden ingecheckt in broncodebeheer. Zie Configuratie voor meer informatie over configuratie in ASP.NET Core.

Warning

In dit artikel wordt een lokale database gebruikt waarvoor de gebruiker niet hoeft te worden geverifieerd. Productie-apps moeten gebruikmaken van de veiligste verificatiestroom die beschikbaar is. Zie Beveiligde verificatiestromenvoor meer informatie over verificatie voor geïmplementeerde test- en productie-apps.

Als u de configuratie wilt instellen, voegt u de volgende constructor en eigenschap toe aan het Startup.cs bestand in de hoofdmap van het project:

public Startup(IConfiguration configuration)
{
    Configuration = configuration;
}

public IConfiguration Configuration { get; }

Houd er rekening mee dat het Startup.cs bestand op dit moment niet wordt gecompileerd, omdat we nog steeds de volgende using instructie moeten toevoegen:

using Microsoft.Extensions.Configuration;

Voeg een appsettings.json bestand toe aan de hoofdmap van het project met behulp van de juiste itemsjabloon:

AppSettings JSON toevoegen

Configuratie-instellingen migreren vanuit web.config

Ons ASP.NET MVC-project bevat de vereiste databaseverbindingsreeks in web.config, in het <connectionStrings> element. In ons ASP.NET Core-project gaan we deze informatie opslaan in het appsettings.json bestand. Open appsettings.jsonen houd er rekening mee dat het al het volgende bevat:

{
    "Data": {
        "DefaultConnection": {
            "ConnectionString": "Server=(localdb)\\MSSQLLocalDB;Database=_CHANGE_ME;Trusted_Connection=True;"
        }
    }
}

Wijzig in de gemarkeerde regel die hierboven wordt weergegeven de naam van de database van _CHANGE_ME in de naam van uw database.

Summary

ASP.NET Core plaatst alle opstartlogica voor de toepassing in één bestand, waarin de benodigde services en afhankelijkheden kunnen worden gedefinieerd en geconfigureerd. Het vervangt het web.config-bestand door een flexibele configuratiefunctie die gebruik kan maken van verschillende bestandsindelingen, zoals JSON, en omgevingsvariabelen.