Compartilhar via


SYSLIB0013: EscapeUriString está obsoleto

A API Uri.EscapeUriString(String) é marcada como obsoleta, a partir do .NET 6. Se você a usar no código, isso vai gerar o aviso SYSLIB0013 em tempo de compilação.

Uri.EscapeUriString(String) pode corromper a cadeia de caracteres de URI em alguns casos.

Para obter mais informações, consulte https://github.com/dotnet/runtime/issues/31387.

Soluções Alternativas

Em vez disso, use Uri.EscapeDataString(String) para componentes de cadeia de consulta.

Suprimir um aviso

Se for necessário usar as APIs obsoletas, você poderá suprimir o aviso no código ou no arquivo de projeto.

Para suprimir apenas uma violação única, adicione as diretivas de pré-processador ao arquivo de origem para desabilitar e, em seguida, reabilite o aviso.

// Disable the warning.
#pragma warning disable SYSLIB0013

// Code that uses obsolete API.
// ...

// Re-enable the warning.
#pragma warning restore SYSLIB0013

Para suprimir todos os avisos SYSLIB0013 no projeto, adicione uma propriedade <NoWarn> ao arquivo de projeto.

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   ...
   <NoWarn>$(NoWarn);SYSLIB0013</NoWarn>
  </PropertyGroup>
</Project>

Para obter mais informações, confira Suprimir avisos.