Compartir a través de


SYSLIB0013: EscapeUriString está obsoleto

La API Uri.EscapeUriString(String) está marcada como obsoleta a partir de .NET 6. Si se usa en el código, se genera una advertencia SYSLIB0013 en tiempo de compilación.

Uri.EscapeUriString(String) puede dañar la cadena URI en algunos casos.

Para más información, consulte https://github.com/dotnet/runtime/issues/31387.

Soluciones alternativas

Use en su lugar Uri.EscapeDataString(String) para los componentes de cadena de consulta.

Supresión de una advertencia

Si tiene que seguir usando las API obsoletas, puede suprimir la advertencia en el código o en el archivo de proyecto.

Para suprimir solo una infracción, agregue directivas de preprocesador al archivo de origen para deshabilitar y luego volver a habilitar la advertencia.

// Disable the warning.
#pragma warning disable SYSLIB0013

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

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

Para suprimir todas las advertencias SYSLIB0013 del proyecto, agregue una propiedad <NoWarn> al archivo del proyecto.

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

Para obtener más información, vea Suprimir advertencias.