Partilhar via


Suporte do Visual Basic

Partes de uso ref structs, que não são suportadas System.Text.Json pelo Visual Basic. Se você tentar usar System.Text.Json APIs ref struct com o Visual Basic, obterá BC40000 erros do compilador. A mensagem de erro indica que o problema é uma API obsoleta, mas o problema real é a falta de suporte ref struct no compilador. As seguintes partes do System.Text.Json não são utilizáveis a partir do Visual Basic:

  • A Utf8JsonReader estrutura. Como o JsonConverter<T>.Read método usa um Utf8JsonReader parâmetro, essa limitação significa que você não pode usar o Visual Basic para escrever conversores personalizados. Uma solução alternativa para isso é implementar conversores personalizados em um assembly de biblioteca C# e fazer referência a esse assembly do seu projeto VB. Isso pressupõe que tudo o que você faz no Visual Basic é registrar os conversores no serializador. Você não pode chamar os Read métodos dos conversores de código do Visual Basic.
  • Sobrecargas de outras APIs que incluem um ReadOnlySpan<T> tipo. A maioria dos métodos inclui sobrecargas que usam String em vez de ReadOnlySpan.

Essas restrições estão em vigor porque as estruturas ref não podem ser usadas com segurança sem suporte a idiomas, mesmo quando apenas "passam dados". Você não deve subverter esse erro. Se você fizer isso, seu código do Visual Basic pode corromper a memória.