Bagikan melalui


ASP0008: Jangan gunakan ConfigureWebHost dengan WebApplicationBuilder.Host

Nilai
ID Aturan ASP0008
Kategori Penggunaan
Perbaikan bersifat disruptif atau non-disruptif Non-disruptif

Penyebab

ConfigureWebHost tidak dapat digunakan dengan Host properti pada WebApplicationBuilder.

Deskripsi aturan

WebApplicationBuilder tidak mendukung konfigurasi WebHost sebelum build menggunakan ConfigureWebHost metode ekstensi.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Cara memperbaiki pelanggaran

Untuk memperbaiki pelanggaran aturan ini, konfigurasikan WebHost secara langsung pada WebApplicationBuilder. Misalnya, alih-alih mengatur jalur akar konten melalui ConfigureWebHost.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Konfigurasikan jalur akar konten langsung di WebApplicationBuilder.WebHost.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Kapan harus menekan peringatan

Jangan menekan peringatan dari aturan ini. Aplikasi yang salah dikonfigurasi dapat mengakibatkan perilaku tak terduga saat runtime.