La mejor opción sería envolver su propia clase Tuple, algo así como la de shipping in .NET 4.0.
entonces usted podría tener una sola:
List<Tuple<string,string,string>>
Esto es bastante fácil de escribir en .NET 2.0 - es básicamente un triplete de valores, en lugar de tener 2 en un KeyValuePair. Sin embargo, no existe un equivalente integrado para un trío de valores en .NET 2.0.
Editar:
Después de leer tu comentario sobre la consulta en otro post, pensé que me gustaría mencionar esto también -
Incluso si usted no tiene valores únicos en key1, se podría acelerar dramáticamente cualquier tipo de consulta/búsqueda mediante:
Dictionary<string, List<KeyValuePair<string,string>>>
Entonces, en lugar de almacenar un solo KeyValuePair, se podría buscar la lista de ellos a través de la llave en el primer correo lement. Esto sería mucho, mucho más rápido si necesitara encontrar todos los elementos con una primera clave dada ...
Las respuestas a esta pregunta pueden ser útiles http://stackoverflow.com/questions/101825/whats-the- best-way-of-use-a-pair-triple-etc-of-values-as-one-value-in-c –