Question

Je discutais avec un collègue de savoir s'il est préférable d'utiliser un dictionnaire et repeupler lors de chaque changement de jeu de résultats ou simplement boucle utiliser LINQ sur tous les éléments de la liste à chaque fois.

Nous essayons de cartographier une relation parent / enfant, et je suggéré d'utiliser la ParentID comme la clé de dictionnaire, et la valeur dictionnaire comme l'objet personnalisé.

Nous allons généralement avoir besoin de parcourir tous les parents / enfants et exécuter la liste.

Y at-il des raisons pour lesquelles vous ne voudriez pas utiliser un dictionnaire dans ce cas? si oui ce utiliseriez-vous à la place

Était-ce utile?

La solution

Si vous avez vraiment besoin d'itérer sur toute la collection à chaque fois, il n'y aurait pas beaucoup (le cas échéant) avantage d'avoir un Dictionary. D'autre part, si vous avez besoin de temps en temps pour localiser des cas spécifiques par leurs clés, Dictionary pourrait être ce dont vous avez besoin.

Notez que même si vous utilisez un dictionnaire, vous pouvez simplement parcourir la liste des valeurs en cas de besoin, pour ne pas trop plus « poids » que par un List itérer normal, mais vous auriez encore le Dictionnaire capacités, si nécessaire.

Autres conseils

Performance sage, il va vraiment dépendre de votre application spécifique, de sorte que vous aurez à tester.

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