Rumah >pembangunan bahagian belakang >C++ >Kenapa aplikasi ASP.NET MVC menyampaikan enums sebagai nombor bukan rentetan, dan bagaimana saya boleh memperbaikinya?
Penyelesaian masalah ASP.NET MVC's Default JSON Serialization of Enums
Aplikasi ASP.NET MVC secara tidak disangka bersiri sebagai enums sebagai nombor dalam respons JSON, walaupun json.net dianggap sebagai serializer lalai. Artikel ini mendiagnosis punca akar dan menawarkan penyelesaian.
Memahami Serializer lalai
bertentangan dengan kepercayaan umum, Serializer JSON Default ASP.NET MVC 4 adalah, bukan json.net. Ini menjelaskan mengapa perwakilan rentetan yang dijangkakan enum tidak berlaku. Masalahnya bukan tetapan JavaScriptSerializer
web.config
Untuk memanfaatkan keupayaan JSON.net dan bersiri enum sebagai rentetan, konfigurasi tersuai adalah penting. Ini melibatkan mewujudkan kelas
adat dan mengkonfigurasinya seperti yang diterangkan dalam penyelesaian yang dirujuk.
JsonNetResult
Untuk model lancar mengikat apabila menggunakan json.net, custom
diperlukan. Kilang tersuai ini perlu didaftarkan, menggantikan lalai, seperti yang ditunjukkan dalam contoh kod yang disediakan. Sumber yang dirujuk memberikan arahan terperinci untuk pelaksanaan ini. ValueProviderFactory
Atas ialah kandungan terperinci Kenapa aplikasi ASP.NET MVC menyampaikan enums sebagai nombor bukan rentetan, dan bagaimana saya boleh memperbaikinya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!