Intergiciel (middleware) : La page d’erreurs de base de données est marquée comme obsolète

DatabaseErrorPageMiddleware et ses méthodes d’extension associées ont été marquées comme obsolètes dans ASP.NET Core 5.0. Les méthodes d’intergiciel et d’extension seront supprimées dans ASP.NET Core 6.0. La fonctionnalité sera fournie à la place par DatabaseDeveloperPageExceptionFilter et ses méthodes d’extension.

Pour plus d’informations, consultez le problème GitHub dotnet/aspnetcore#24987.

Version introduite

5.0 RC 1

Ancien comportement

DatabaseErrorPageMiddleware et ses méthodes d’extension associées n’étaient pas obsolètes.

Nouveau comportement

DatabaseErrorPageMiddleware et ses méthodes d’extension associées sont obsolètes.

Raison du changement

DatabaseErrorPageMiddleware a été migré vers une API extensible pour la page d’exception du développeur. Pour plus d’informations sur l’API extensible, consultez Problème GitHub dotnet/aspnetcore#8536.

Suivez les étapes ci-dessous :

  1. Arrêtez d’utiliser DatabaseErrorPageMiddleware dans votre projet. Par exemple, supprimez l’appel de méthode UseDatabaseErrorPage à partir de Startup.Configure :

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDatabaseErrorPage();
        }
    }
    
  2. Ajoutez la page d’exception du développeur à votre projet. Par exemple, appelez la méthode UseDeveloperExceptionPage dans Startup.Configure :

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
    }
    
  3. Ajoutez le package NuGet Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore au fichier projet.

  4. Ajoutez le filtre d’exception de page du développeur de base de données à la collection de services. Par exemple, appelez la méthode AddDatabaseDeveloperPageExceptionFilter dans Startup.ConfigureServices :

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

API affectées