J'ai un appel de procédure de stockage renvoyant un jeu d'enregistrements dont le champ est inconnu à l'avance. Pour des raisons d'interopérabilité, je dois le faire fonctionner sur 3.5, donc je n'ai aucun support dynamique. Y a-t-il une solution intégrée dans dapper? Je n'en ai pas trouvé par moi-même. S'il n'y a pas une telle solution, est-il sensé (et fonctionne-t-il) de créer à la volée un type exposant la propriété que je chercherais? EDIT J'ai réussi à ajouter une solution complètement externe (sans modifier le code de base original) en créant un objet dynamique dans c # 3.0. Voici le code dapper d'extension et ici la fabrique de l'objet dynamique .
En fait, le support dynamic
de dapper est implémenté via ExpandoObject, qui est essentiellement un dictionnaire. Il serait assez simple de modifier le code existant pour retourner IDictionary<string,object>
au lieu de dynamic
dans le cas de 3.5