Rumah >pembangunan bahagian belakang >C++ >Mengapa Enum ASP.NET MVC Saya Disiri sebagai Nombor Bukan Rentetan?
Menyelesaikan masalah ASP.NET MVC Enum Serialisasi kepada JSON
Aplikasi ASP.NET MVC secara tidak dijangka mensiri enum sebagai nombor dalam respons JSON, bukannya perwakilan rentetan yang dikehendaki. Ini menunjukkan penyeri bersiri lalai bukan Newtonsoft.Json (Json.NET), walaupun ia biasa digunakan. Mari kita periksa punca dan penyelesaian yang berpotensi:
1. Semakan Konfigurasi:
Pengendali kandungan fail web.config
mungkin mentakrifkan penyeri JSON tersuai. Walau bagaimanapun, ini tidak mungkin jika Json.NET tidak dikonfigurasikan secara eksplisit.
2. Pengenalan Pensiri Lalai:
Yang penting, versi ASP.NET MVC sebelum MVC 5 tidak menggunakan Json.NET secara lalai; mereka menggunakan JavaScriptSerializer
. Untuk memanfaatkan siri enum rentetan Json.NET, penyepaduan manual diperlukan. Sumber yang memperincikan proses ini termasuk:
3. Model Binding dan Custom ValueProviderFactory:
Untuk Json.NET menyusun enum dengan betul sebagai rentetan, ValueProviderFactory
tersuai mungkin diperlukan. Kilang tersuai ini membenarkan pengikatan data JSON kepada sifat model semasa pengikatan model. Rujuk sumber ini untuk butiran pelaksanaan:
Dengan menangani perkara ini, anda boleh memastikan aplikasi ASP.NET MVC anda menyerikan enum sebagai rentetan dalam respons JSON, selaras dengan tingkah laku yang dijangkakan.
Atas ialah kandungan terperinci Mengapa Enum ASP.NET MVC Saya Disiri sebagai Nombor Bukan Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!