Visual Basic-Unterstützung
Teile von System.Text.Json, die ref-Strukturen verwenden, werden von Visual Basic nicht unterstützt. Wenn Sie versuchen, System.Text.Json-ref-Struktur-APIs mit Visual Basic zu verwenden, erhalten Sie BC40000-Compilerfehler. Die Fehlermeldung gibt an, dass das Problem eine veraltete API ist, aber das eigentliche Problem besteht darin, dass im Compiler keine Unterstützung für ref-Strukturen vorhanden ist. Die folgenden Teile von System.Text.Json können in Visual Basic nicht verwendet werden:
- Die Utf8JsonReader-Struktur. Da die JsonConverter<T>.Read-Methode einen
Utf8JsonReader
-Parameter akzeptiert, bedeutet diese Einschränkung, dass Sie Visual Basic nicht verwenden können, um benutzerdefinierte Konverter zu schreiben. Eine Problemumgehung hierfür besteht darin, benutzerdefinierte Konverter in einer C#-Bibliotheksassembly zu implementieren und aus Ihrem VB-Projekt auf diese Assembly zu verweisen. Dabei wird davon ausgegangen, dass Sie in Visual Basic nur die Konverter beim Serialisierungsmodul registrieren. Sie können dieRead
-Methoden der Konverter nicht aus Visual Basic-Code aufrufen. - Überladungen anderer APIs, die einen ReadOnlySpan<T>-Typ enthalten. Die meisten Methoden enthalten Überladungen, die
String
anstelle vonReadOnlySpan
nutzen.
Diese Einschränkungen gelten, da ref-Strukturen ohne Sprachunterstützung nicht sicher verwendet werden können, auch wenn „nur“ Daten übergeben werden. Wenn Sie diesen Fehler umgehen, entsteht Visual Basic-Code, der den Speicher beschädigen kann und nicht verwendet werden sollte.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für