You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 6迁移时配置Kestrel启动选项报不支持异常如何解决?

.NET 6 极简启动模型下Kestrel配置方案

你遇到的报错是因为.NET 6 推出的WebApplicationBuilder极简启动模型中,不再支持通过builder.Host调用ConfigureWebHostDefaults方法配置Web主机相关参数,Web主机的配置入口已统一迁移到builder.WebHost属性下,可选择以下两种方案解决:

方案1:直接通过WebHost属性配置Kestrel(推荐,和原有写法逻辑最接近)

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddVariousStuff();

// 替换原有builder.Host.ConfigureWebHostDefaults的写法
builder.WebHost.ConfigureKestrel(serverOptions =>
{
    serverOptions.Limits.MaxConcurrentConnections = 100;
    serverOptions.Limits.MaxConcurrentUpgradedConnections = 100;
    serverOptions.Limits.MaxRequestBodySize = 52428800;
});

var app = builder.Build();
app.UseStuffEtc();
app.Run();

方案2:通过服务注册配置Kestrel选项

也可以用.NET 选项模式的标准写法注册Kestrel配置:

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddVariousStuff();

builder.Services.Configure<Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerOptions>(serverOptions =>
{
    serverOptions.Limits.MaxConcurrentConnections = 100;
    serverOptions.Limits.MaxConcurrentUpgradedConnections = 100;
    serverOptions.Limits.MaxRequestBodySize = 52428800;
});

var app = builder.Build();
app.UseStuffEtc();
app.Run();

两种方案效果完全一致,可根据自己的代码习惯选择。如果还需要配置其他Web主机相关参数(比如环境、内容根目录等),也都可以通过builder.WebHost下的对应方法完成。

内容的提问来源于stack exchange,提问作者brando

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 13:36:05