Question

Je fais une "comparaison profonde" des structures de données pour la journalisation d'audit (qui a changé ce que les membres, quand). J'utilise la réflexion pour cela, je me reproche dans les structures et à les comparer. J'ai cependant touché un problème avec ceux qui contiennent des dictionnaires.

Je peux détecter qu'un membre est un dictionnaire par typeof(IDictionary).IsAssignableFrom(memberType). Mon plan est alors de collecter les clés qui sont présentes dans les deux objets et de continuer la récursivité sur celles-ci. Cependant, IDictionary.Keys est un ICollection, qui n'est pas étendu par linq. Ne connaissant pas le type des clés, comment pourrais-je y parvenir?

Peut-être que cette méthode est sous-optimale (je ne suis pas si expérimenté dans le combo générique / réflexion), devrais-je le faire d'une autre manière?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top