ASP0008 : Ne pas utiliser ConfigureWebHost avec WebApplicationBuilder.Host

Value
Identificateur de la règle ASP0008
Catégorie Utilisation
Le correctif est cassant ou non cassant Sans rupture

Cause

ConfigureWebHost ne peut pas être utilisé avec la propriété Host sur WebApplicationBuilder.

Description de la règle

WebApplicationBuilder ne prend pas en charge la configuration de WebHost avant la build à l’aide de la ConfigureWebHost méthode d’extension.

var builder = WebApplication.CreateBuilder(args);

builder.Host.ConfigureWebHost(webHostBuilder => {
    webHostBuilder.UseContentRoot(Path.Combine(Directory.GetCurrentDirectory(), "myContentRoot"));
});

var app = builder.Build();

app.Run();

Comment corriger les violations

Pour corriger une violation de cette règle, configurez directement le WebHostsur le WebApplicationBuilder. Par exemple, au lieu de définir le chemin racine du contenu via ConfigureWebHost.

var builder = WebApplication.CreateBuilder(args);

builder.Host.ConfigureWebHost(webHostBuilder =>
{
    webHostBuilder.UseContentRoot(Path.Combine(Directory.GetCurrentDirectory(), "myContentRoot"));
});

var app = builder.Build();

app.Run();

Configurez le chemin d’accès racine du contenu directement sur WebApplicationBuilder.WebHost.

var builder = WebApplication.CreateBuilder(args);

builder.WebHost.UseContentRoot(Path.Combine(Directory.GetCurrentDirectory(), "foobar"));

var app = builder.Build();

app.Run();

Quand supprimer les avertissements

Ne supprimez pas un avertissement de cette règle. Une application mal configurée peut entraîner un comportement inattendu au moment de l'exécution.