Bagaimana untuk mengekalkan tingkah laku bersiri lalai dalam System.Text.Json.JsonConverter tersuai tanpa logik penulisan tersuai?
Pilihan JsonConverter mempunyai keutamaan yang berbeza, termasuk:
Terdapat cara berbeza untuk melaksanakan siri lalai bergantung pada cara penukar digunakan:
Panggil JsonSerializer.Serialize(penulis, orang, pilihan);
Berikut ialah contoh menggunakan kilang penukar:
<code class="language-csharp">public sealed class PersonConverter : DefaultConverterFactory<Person> { ... protected override T Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions modifiedOptions) => (T)JsonSerializer.Deserialize(ref reader, typeToConvert, modifiedOptions); protected override void Write(Utf8JsonWriter writer, T value, JsonSerializerOptions modifiedOptions) => JsonSerializer.Serialize(writer, value, modifiedOptions); } ... var person = new Person("John", "Doe"); var options = new JsonSerializerOptions { Converters = { new PersonConverter() } }; var json = JsonSerializer.Serialize(person, options);</code>
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekalkan Gelagat Pensirilan JSON Lalai dalam Penukar Json Tersuai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!