Share via


Visual Basic-ondersteuning

Onderdelen van System.Text.Json gebruiksverwijzing, die niet worden ondersteund door Visual Basic. Als u refstruct-API's met Visual Basic probeert te gebruiken System.Text.Json , krijgt u BC40000 compilerfouten. Het foutbericht geeft aan dat het probleem een verouderde API is, maar het werkelijke probleem ontbreekt aan refstruct-ondersteuning in de compiler. De volgende onderdelen zijn System.Text.Json niet bruikbaar vanuit Visual Basic:

  • De Utf8JsonReader struct. Omdat de JsonConverter<T>.Read methode een Utf8JsonReader parameter gebruikt, betekent deze beperking dat u Visual Basic niet kunt gebruiken om aangepaste conversieprogramma's te schrijven. Een tijdelijke oplossing hiervoor is het implementeren van aangepaste conversieprogramma's in een C#-bibliotheekassembly en verwijzen naar die assembly vanuit uw VB-project. Hierbij wordt ervan uitgegaan dat alles wat u in Visual Basic doet, de conversieprogramma's registreert bij de serializer. U kunt de methoden van de Read conversieprogramma's niet aanroepen vanuit Visual Basic-code.
  • Overbelasting van andere API's die een ReadOnlySpan<T> type bevatten. De meeste methoden omvatten overbelastingen die in String plaats van ReadOnlySpan.

Deze beperkingen gelden omdat verw-structs niet veilig kunnen worden gebruikt zonder taalondersteuning, zelfs wanneer alleen gegevens worden doorgegeven. Als u deze fout afdraait, resulteert dit in Visual Basic-code die geheugen kan beschadigen en niet mag worden uitgevoerd.