Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Anteriormente, algumas APIs eram obsoletas sem usar IDs de diagnóstico personalizadas. Do .NET 6 em diante, essas APIs são relatadas como obsoletas usando diferentes IDs de diagnóstico personalizadas. Se você suprimiu avisos de uso dessas APIs por meio do CS0618, modifique as supressões para usar as novas IDs de diagnóstico, que são SYSLIB0003, SYSLIB0019 e SYSLIB0020.
Descrição da alteração
A tabela a seguir mostra as IDs de diagnóstico antigas e novas para a API obsoleta listada.
API (Interface de Programação de Aplicativos) | ID de diagnóstico anterior | Nova ID de diagnóstico |
---|---|---|
Thread.GetCompressedStack() | CS0618 | SYSLIB0003 |
Thread.SetCompressedStack(CompressedStack) | CS0618 | SYSLIB0003 |
RuntimeEnvironment.SystemConfigurationFile | CS0618 | SYSLIB0019 |
RuntimeEnvironment.GetRuntimeInterfaceAsIntPtr(Guid, Guid) | CS0618 | SYSLIB0019 |
RuntimeEnvironment.GetRuntimeInterfaceAsObject(Guid, Guid) | CS0618 | SYSLIB0019 |
JsonSerializerOptions.IgnoreNullValues | CS0618 | SYSLIB0020 |
Versão introduzida
.NET 6
Motivo da alteração
A partir do .NET 5, as obsoletações têm como objetivo usar valores personalizados de ID de diagnóstico para permitir uma supressão mais precisa dos avisos. Isso gera uma experiência melhor quando as APIs obsoletas precisam permanecer referenciadas. Os itens obsoletos afetados aqui deveriam ter tido os valores de ID de diagnóstico personalizados aplicados quando as APIs foram originalmente marcadas como [Obsolete]
.
Ação recomendada
Se as IDs de diagnóstico SYSLIB0003, SYSLIB0019 ou SYSLIB0020 forem produzidas a partir de seu build, examine o uso das APIs afetadas. Se possível, evite usar essas APIs e consulte as mensagens e a documentação para obter alternativas. Se você precisar manter as referências às APIs obsoletas e suprimir o diagnóstico, suprime os avisos usando as novas IDs de diagnóstico em vez de CS0618.
APIs afetadas
- System.Threading.Thread.GetCompressedStack()
- System.Threading.Thread.SetCompressedStack(CompressedStack)
- System.Runtime.InteropServices.RuntimeEnvironment.SystemConfigurationFile
- System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeInterfaceAsIntPtr(Guid, Guid)
- System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeInterfaceAsObject(Guid, Guid)
- System.Text.Json.JsonSerializerOptions.IgnoreNullValues