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.Server.Kestrel.BadHttpRequestException
Microsoft.AspNetCore.Server.IIS.BadHttpRequestException
替换为 Microsoft.AspNetCore.Http.BadHttpRequestException
。