Rumah >pembangunan bahagian belakang >C++ >Bolehkah Json.Net Mengkonfigurasi Gelagat Penetap Peribadi Tanpa Mengubah Suai Kod Sumber?
Mengkonfigurasi Gelagat Penetap Peribadi dalam Json.Net
Walaupun Json.Net menawarkan atribut untuk menangani penetap peribadi, pilihan lalai untuk fungsi ini sering dicari. Sekiranya tiada pengubahsuaian kod sumber, persoalan timbul: adakah terdapat tetapan yang boleh dikonfigurasikan untuk mencapai tingkah laku ini?
Jawapan
Pilihan 1: Menggunakan [ JsonProperty] Atribut
Daripada bergantung pada atribut tertentu, hanya menggunakan Atribut [JsonProperty] berfungsi untuk mengisi sifat baca sahaja semasa penyahserikatan. Contoh:
[JsonProperty] public Guid? ClientId { get; private set; }
Pilihan 2: Penyelesaian Berasaskan Pembina
Pendekatan alternatif melibatkan mencipta pembina dengan parameter yang sepadan dengan harta persendirian:
public class Foo { public string Bar { get; } public Foo(string bar) { Bar = bar; } }
Ini membolehkan perkara berikut:
string json = "{ \"bar\": \"Stack Overflow\" }"; var deserialized = JsonConvert.DeserializeObject<Foo>(json); Console.WriteLine(deserialized.Bar); // Stack Overflow
Kelebihan pendekatan ini termasuk:
Atas ialah kandungan terperinci Bolehkah Json.Net Mengkonfigurasi Gelagat Penetap Peribadi Tanpa Mengubah Suai Kod Sumber?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!