Suporte a HTTP/3 em System.Net.Http desabilitado por padrão com PublishTrimmed

Configurar PublishTrimmed ou PublishAot para true no projeto desabilita o suporte a HTTP/3 em System.Net.Http por padrão.

Versão introduzida

.NET 10

Comportamento anterior

Anteriormente, o suporte a HTTP/3 era permitido, mas talvez não tivesse funcionado por padrão em ambientes em que a biblioteca nativa msquic não estava disponível. Isso resultou em HTTP/3 não funcionar enquanto o aplicativo carregava todo o código relacionado a ele.

Novo comportamento

A partir do .NET 10, HTTP/3 está desabilitado e o código para ele não está incluído quando PublishTrimmed ou PublishAot está definido como true.

Tipo de mudança disruptiva

Essa alteração pode afetar a compatibilidade da origem.

Motivo da alteração

Como fazer com que o HTTP/3 funcione requer gestos adicionais e, muitas vezes, não funciona por padrão, o tempo de execução não carrega mais o código para ele em aplicativos compilados com AOT ou cortados.

Para habilitar o suporte a HTTP/3 em aplicativos que usam PublishTrimmed ou PublishAot, defina a propriedade <Http3Support> como true no arquivo de projeto:

<PropertyGroup>
  ...
  <PublishTrimmed>true</PublishTrimmed>
  <Http3Support>true</Http3Support>
</PropertyGroup>

APIs afetadas

None.

Consulte também