2008-11-06 4 views
4

Je travaillais sur une fonction dont j'avais besoin pour retourner deux valeurs, l'une étant un nom de colonne et l'autre étant la valeur de cette colonne pour cette ligne courante. Je retourne KeyValuePair (de String, Object). Je me demandais si c'est une bonne idée ou est-ce que ça rend difficile à lire/utiliser?Est-il acceptable de renvoyer un KeyValuePair d'une fonction .NET?

Répondre

7

S'il s'agit véritablement d'une paire valeur/clé, cela semble plutôt raisonnable. .NET 4.0 inclura une classe Tuple appropriée pour les cas où il n'y a pas de relation clé-valeur. L'alternative est d'utiliser les paramètres out/ref, en laissant l'appelant décider s'il faut garder les valeurs ensemble - mais je préfère l'approche KeyValuePair quand il y a une relation évidente et l'appelant voudra probablement les garder combinés.

+0

S'il n'y a pas de relation KVP, créez simplement votre propre classe simple encapsulant ce que vous renvoyez. Dans l'exemple fourni KeyValuePair semble OK. –

Questions connexes