Les outils d'Object-Relational Mapping (ORM) offrent des avantages tels que la sécurité de type en mappant les relations de base de données aux types de langages de programmation. Cependant, un exemple spécifique met en évidence de mauvaises pratiques de codage. Le code itère à travers un DataSet ADO.NET déconnecté, qui modélise les données de la base de données en mémoire. L'accès aux tables par index (par exemple, Table(0)) au lieu du nom est inefficace. Plus important encore, la chaîne de récupération de données est inutilement verbeuse et sujette aux erreurs. Le code appelle répétitivement des méthodes comme ToUpper et ToString sur les champs de données. Cette chaîne devient absurde avec des appels ToUpper redondants pour "Tachometer". Un gestionnaire d'exceptions est utilisé pour les valeurs nulles potentielles, et non pour les erreurs de connexion à la base de données. Ce gestionnaire manque de vérification d'exceptions spécifique, supposant que seuls les nulls causent des problèmes. Un changement de schéma de table a cassé le code en modifiant l'indexation des colonnes, mais le gestionnaire a masqué l'erreur. Les utilisateurs ont rencontré des fonctionnalités défaillantes, comme des entrées "Pump Bracket" manquantes, sans messages d'erreur clairs. La boîte de message commentée suggère que des erreurs nulles fréquentes submergeaient les utilisateurs.
DataSetADO.NET déconnecté, qui modélise les données de la base de données en mémoire. L'accès aux tables par index (par exemple,Table(0)) au lieu du nom est inefficace. Plus important encore, la chaîne de récupération de données est inutilement verbeuse et sujette aux erreurs. Le code appelle répétitivement des méthodes commeToUpperetToStringsur les champs de données. Cette chaîne devient absurde avec des appelsToUpperredondants pour "Tachometer". Un gestionnaire d'exceptions est utilisé pour les valeurs nulles potentielles, et non pour les erreurs de connexion à la base de données. Ce gestionnaire manque de vérification d'exceptions spécifique, supposant que seuls les nulls causent des problèmes. Un changement de schéma de table a cassé le code en modifiant l'indexation des colonnes, mais le gestionnaire a masqué l'erreur. Les utilisateurs ont rencontré des fonctionnalités défaillantes, comme des entrées "Pump Bracket" manquantes, sans messages d'erreur clairs. La boîte de message commentée suggère que des erreurs nulles fréquentes submergeaient les utilisateurs.