Visual Basic 支援
Visual Basic 不支援使用 ref struct 的 System.Text.Json 部分。 如果您嘗試搭配 Visual Basic 使用 System.Text.Json ref 結構 API,您會收到BC40000編譯程序錯誤。 錯誤訊息指出問題在於已淘汰的 API,但實際問題是編譯器中不支援 ref struct。 無法從 Visual Basic 使用下列 System.Text.Json 部分:
- Utf8JsonReader 結構。 因為 JsonConverter<T>.Read 方法採用
Utf8JsonReader
參數,所以此限制表示您無法使用 Visual Basic 撰寫自訂轉換器。 解決此問題的因應措施是,在 C# 程式庫組件中實作自訂轉換器,並從 VB 專案參考該組件。 這會假設您在 Visual Basic 中所做的行為是將轉換器註冊到序列化程式。 您無法從 Visual Basic 程式碼呼叫轉換器的Read
方法。 - 包括 ReadOnlySpan<T> 類型的其他 API 多載。 大多數方法都包含使用
String
(而非ReadOnlySpan
) 的多載。
這些限制已就緒,因為 ref 結構不能在沒有語言支持的情況下安全地使用,即使只是「傳遞數據」也一樣。您不應該顛覆此錯誤。 如果您這麼做,Visual Basic 程式代碼可能會損毀記憶體。