Поделиться через


Поддержка Visual Basic

System.Text.Json Части структур ссылок на использование, которые не поддерживаются Visual Basic. Если вы пытаетесь использовать System.Text.Json API структуры ссылок с Visual Basic, вы получите BC40000 ошибки компилятора. Сообщение об ошибке указывает, что проблема является устаревшим API, но фактическая проблема не поддерживает структуру ссылок в компиляторе. Следующие части System.Text.Json не доступны для использования из Visual Basic:

  • Структуру Utf8JsonReader . JsonConverter<T>.Read Так как метод принимает Utf8JsonReader параметр, это ограничение означает, что вы не можете использовать Visual Basic для записи пользовательских преобразователей. Это позволяет реализовать пользовательские преобразователи в сборке библиотеки C# и ссылаться на эту сборку из проекта VB. Предполагается, что все, что вы делаете в Visual Basic, регистрируют преобразователи в сериализаторе. Методы преобразователей из кода Visual Basic нельзя вызывать Read .
  • Перегрузки других API, которые включают ReadOnlySpan<T> тип. Большинство методов включают перегрузки, которые используются String вместо ReadOnlySpan.

Эти ограничения существуют, так как структуры ссылок не могут использоваться безопасно без поддержки языка, даже если только "передача данных через". Подмножение этой ошибки приведет к повреждению памяти в Visual Basic, что может привести к повреждению памяти и не должно выполняться.