Mellanprogram: Databasfelssida markerad som föråldrad

DatabaseErrorPageMiddleware och dess associerade tilläggsmetoder har markerats som föråldrade i ASP.NET Core 5.0. Metoderna för mellanprogram och tillägg tas bort i ASP.NET Core 6.0. Funktionerna tillhandahålls i stället av DatabaseDeveloperPageExceptionFilter och dess tilläggsmetoder.

För diskussion, se GitHub-ärendet på dotnet/aspnetcore#24987.

Version lanserad

5.0 RC 1

Gammalt beteende

DatabaseErrorPageMiddleware och dess associerade tilläggsmetoder var inte föråldrade.

Nytt beteende

DatabaseErrorPageMiddleware och dess associerade utökningsmetoder är föråldrade.

Orsak till ändring

DatabaseErrorPageMiddleware migrerades till ett utökningsbart API för undantagssidan för utvecklare. Mer information om det utökningsbara API:et finns i GitHub-problemet dotnet/aspnetcore#8536.

Slutför följande steg:

  1. Sluta använda DatabaseErrorPageMiddleware i projektet. Ta till exempel bort metodanropet UseDatabaseErrorPage från Startup.Configure:

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDatabaseErrorPage();
        }
    }
    
  2. Lägg till undantagssidan för utvecklare i projektet. Anropa UseDeveloperExceptionPage till exempel metoden i Startup.Configure:

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
    }
    
  3. Lägg till NuGet-paketet Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore i projektfilen.

  4. Lägg till undantagsfiltret för databasutvecklarens sida i tjänstesamlingen. Anropa AddDatabaseDeveloperPageExceptionFilter till exempel metoden i Startup.ConfigureServices:

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddDatabaseDeveloperPageExceptionFilter();
    }
    

Berörda API:er