Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah JsonConverter Tersuai Boleh Mengendalikan Nilai Enum yang Tidak Dijangka dalam Penyahserialisasian JSON?
Mengatasi Nilai Enum JSON yang Tidak Dijangka dengan Pengendalian Tersuai
Apabila menemui data JSON yang mengandungi nilai enum yang melebihi takrifan enum semasa anda, adalah mungkin untuk mengalami pengecualian semasa penyahserikatan menggunakan Json.net. Untuk menyelesaikan isu ini, mencipta JsonConverter tersuai ialah penyelesaian yang berkesan.
TolerantEnumConverter: Pendekatan Penyahserikatan Fleksibel
TolerantEnumConverter ialah JsonConverter tersuai yang memberikan fleksibiliti dalam mengendalikan unrecognized nilai enum. Ia mengikuti pepohon membuat keputusan untuk menentukan respons yang sesuai:
Faedah dan Pelaksanaan
Menggunakan TolerantEnumConverter menawarkan beberapa kelebihan:
Untuk melaksanakan TolerantEnumConverter, cuma tambahkannya sebagai atribut [JsonConverter] pada jenis enum anda. Kod yang diberikan dalam jawapan boleh digunakan sebagai titik permulaan dan disesuaikan untuk memenuhi keperluan projek anda.
Demonstrasi dan Kesan
Demo yang disediakan mempamerkan cara TolerantEnumConverter mengendalikan pelbagai nilai enum JSON, termasuk nilai sah, tidak sah dan nol. Hasilnya dipaparkan untuk kedua-dua enum yang boleh dibatalkan dan tidak boleh dibatalkan, menunjukkan keupayaan penukar untuk menghalang pengecualian sambil memberikan hasil penyahserikatan yang fleksibel.
Atas ialah kandungan terperinci Bagaimanakah JsonConverter Tersuai Boleh Mengendalikan Nilai Enum yang Tidak Dijangka dalam Penyahserialisasian JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!