HTTP:Kestrel 和 IIS BadHttpRequestException 类型标记为已过时并已替换
Microsoft.AspNetCore.Server.Kestrel.BadHttpRequestException
和 Microsoft.AspNetCore.Server.IIS.BadHttpRequestException
已标记为已过时,并已更改为从 Microsoft.AspNetCore.Http.BadHttpRequestException
派生。 为了实现后向兼容性,Kestrel 和 IIS 服务器仍会引发旧的异常类型。 未来版本将删除这些过时的类型。
有关讨论,请参阅 dotnet/aspnetcore#20614。
引入的版本
5.0 预览版 4
旧行为
Microsoft.AspNetCore.Server.Kestrel.BadHttpRequestException
和 Microsoft.AspNetCore.Server.IIS.BadHttpRequestException
派生自 System.IO.IOException。
新行为
Microsoft.AspNetCore.Server.Kestrel.BadHttpRequestException
和 Microsoft.AspNetCore.Server.IIS.BadHttpRequestException
已过时。 这些类型还派生自 Microsoft.AspNetCore.Http.BadHttpRequestException
(派生自 System.IO.IOException
)。
更改原因
此更改的目的是:
- 合并重复类型。
- 跨服务器实现统一行为。
现在,使用 Kestrel 或 IIS 时,应用可以捕获基本异常 Microsoft.AspNetCore.Http.BadHttpRequestException
。
建议操作
用 Microsoft.AspNetCore.Http.BadHttpRequestException
替换 Microsoft.AspNetCore.Server.Kestrel.BadHttpRequestException
和 Microsoft.AspNetCore.Server.IIS.BadHttpRequestException
的用法。
受影响的 API
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈