Navigation de défis d'analyse JSON: aborder les noms de classe C # non valides
Un obstacle fréquent dans la conversion des données JSON en objets C # implique des chaînes JSON contenant des noms qui violent les règles de l'identifiant C #. Ces identifiants non valides commencent souvent par un nombre ou incluent des caractères interdits par les conventions de dénomination C #.
L'approche recommandée consiste à désérialiser le JSON en un dictionnaire. Cela contourne la nécessité de créer des classes avec des noms problématiques. Voici comment accomplir cela en utilisant la bibliothèque JSON de Newtonsoft:
<code class="language-csharp">public class PrayerTimes { public string fajr { get; set; } public string sunrise { get; set; } public string zuhr { get; set; } public string asr { get; set; } public string maghrib { get; set; } public string isha { get; set; } } var jsonDictionary = JsonConvert.DeserializeObject<Dictionary<string, PrayerTimes>>(jsonString);</code>
Dans ce code, jsonString
détient vos données JSON. La désérialisation en un Dictionary<string, PrayerTimes>
crée des paires de valeurs clés. Les clés représentent les noms originaux (potentiellement invalides) du JSON, tandis que les valeurs sont des objets PrayerTimes
contenant les données réelles de temps de prière. Cela permet un accès pratique aux temps de prière en utilisant les clés sans rencontrer de conflits de dénomination.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!