Mengendalikan Sifat Antara Muka Semasa Penyahserikatan JSON dengan JSON.NET
Proses penyahserikatan JSON.NET boleh menjadi masalah apabila menghadapi sifat antara muka. Penyahserialisasian langsung objek yang mengandungi sifat antara muka mengakibatkan ralat kerana JSON.NET tidak boleh membuat instantiate antara muka secara langsung.
Penyelesaian: Suntikan Pembina untuk Penyahserikatan Lancar
Penyelesaian yang mudah dan berkesan ialah memanfaatkan suntikan pembina. Dengan memasukkan kejadian kelas konkrit sebagai parameter pembina dalam kelas yang melaksanakan antara muka, JSON.NET boleh mengenal pasti dan menggunakan kelas konkrit yang sesuai dengan betul semasa penyahserikatan.
Contoh Ilustrasi:
Mari kita periksa kelas yang menampilkan sifat antara muka:
<code class="language-csharp">public class Visit : IVisit { public Visit(MyLocation location, Guest guest) { Location = location; Guest = guest; } public long VisitId { get; set; } public ILocation Location { get; set; } public DateTime VisitDate { get; set; } public IGuest Guest { get; set; } }</code>
Pendekatan berasaskan pembina ini membolehkan JSON.NET menyahsiri data JSON dengan tepat ke dalam kelas konkrit yang diperlukan, dengan itu menyelesaikan isu dengan sifat antara muka.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyahserialisasikan Sifat Antara Muka dalam JSON.NET Tanpa Ralat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!