Apabila menggunakan json.net untuk bersiri, adalah permintaan yang sama untuk secara selektif mengecualikan sifat udara. Artikel ini membincangkan beberapa teknologi yang mencapai matlamat ini, terutama memberi perhatian kepada sifat -sifat mengabaikan objek senarai.
Gambaran keseluruhan soalan
Katakan anda mempunyai kelas yang dipanggil Test1, termasuk ID, Label, URL, dan senarai objek yang dipanggil Test2. Anda berharap dapat mengubah urutan Test1 ke JSON, tetapi ia hanya termasuk apabila senarai Test2 tidak kosong.
atribut jsonignore
Jika senarai Test2 kosong, anda boleh menggunakan atribut
untuk mengecualikannya dari output JSON. Walau bagaimanapun, kaedah ini mempunyai batasan. Jika senarai Test2 tidak kosong, ia akan sentiasa dimasukkan walaupun ia mengandungi item kosong. Atribut JSONProperty dalam kombinasi dengan nullValueHandling
[JsonIgnore]
Penyelesaian lain ialah menggunakan atribut
bersama -sama. Ini membolehkan anda mengabaikan atribut tetapan eksplisit untuk batal. Kod berikut menunjukkan kaedah ini:
Tetapkan NullValueHandling Global [JsonProperty]
NullValueHandling=NullValueHandling.Ignore
Jika anda mahu menggunakan nilai kosong kepada semua atribut di dalam kelas, anda boleh menggunakan atribut
<code class="language-csharp">[JsonProperty("item", NullValueHandling = NullValueHandling.Ignore)] public List<test2> Test2List { get; set; }</code>
Atas ialah kandungan terperinci Bagaimanakah saya boleh mengabaikan sifat null dan senarai dalam siri json dengan json.net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!